rusefi/misc/install/STM32_Programmer_CLI/Data_Base/STM32_Prog_DB_0x451.xml

736 lines
25 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<Root xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="SCHVerif.xsd">
<Device>
<DeviceID>0x451</DeviceID>
<Vendor>STMicroelectronics</Vendor>
<Type>MCU</Type>
<CPU>Cortex-M7</CPU>
<Name>STM32F76x/STM32F77x</Name>
<Series>STM32F7</Series>
<Description>ARM 32-bit Cortex-M7 based device</Description>
<Configurations>
<!-- JTAG_SWD Interface -->
<Interface name="JTAG_SWD">
<!-- 1MB Single Bank-->
<Configuration number="0x0">
<DualBank>
<ReadRegister address="0x40023C14" mask="0x20000000" value="0x20000000"/>
</DualBank>
<FlashSize>
<ReadRegister address="0x1FF0F442" mask="0x0000FFFF" value="0x0400"/>
</FlashSize>
</Configuration>
<!-- 1MB Dual Bank-->
<Configuration number="0x1">
<DualBank>
<ReadRegister address="0x40023C14" mask="0x20000000" value="0x0"/>
</DualBank>
<FlashSize>
<ReadRegister address="0x1FF0F442" mask="0x0000FFFF" value="0x0400"/>
</FlashSize>
</Configuration>
<!-- 2MB Single Bank-->
<Configuration number="0x2">
<DualBank>
<ReadRegister address="0x40023C14" mask="0x20000000" value="0x20000000"/>
</DualBank>
<FlashSize>
<ReadRegister address="0x1FF0F442" mask="0x0000FFFF" value="0x0800"/>
</FlashSize>
</Configuration>
<!-- 2MB Dual Bank-->
<Configuration number="0x3">
<DualBank>
<ReadRegister address="0x40023C14" mask="0x20000000" value="0x0"/>
</DualBank>
<FlashSize>
<ReadRegister address="0x1FF0F442" mask="0x0000FFFF" value="0x0800"/>
</FlashSize>
</Configuration>
<!-- Dummy Config Dual bank-->
<Configuration number="0x4">
<DualBank>
<ReadRegister address="0x40023C14" mask="0x20000000" value="0x00000000"/>
</DualBank>
</Configuration>
<!-- Dummy Config-->
<Configuration number="0x5">
<DualBank>
<ReadRegister address="0x40023C14" mask="0x00000000" value="0x00000000"/>
</DualBank>
</Configuration>
</Interface>
<!-- Bootloader Interface -->
<Interface name="Bootloader">
<Configuration number="0x0"> <!-- 1MB Single Bank-->
<DualBank reference="0x1">
<ReadRegister address="0x1FFF0008" mask="1000EFFF" value="1000EFFF"/>
</DualBank>
</Configuration>
<Configuration number="0x1"> <!-- 1MB Dual Bank-->
<DualBank reference="0x0">
<ReadRegister address="0x1FFF0008" mask="3000CFFF" value="3000CFFF"/>
</DualBank>
</Configuration>
<Configuration number="0x2"> <!-- 2MB Single Bank-->
<DualBank reference="0x1">
<ReadRegister address="0x1FFF0008" mask="0x2000" value="0x2000"/>
</DualBank>
</Configuration>
<Configuration number="0x3"> <!-- 2MB Single Bank-->
<DualBank reference="0x1">
<ReadRegister address="0x1FFF0008" mask="0x2000" value="0x0"/>
</DualBank>
</Configuration>
</Interface>
</Configurations>
<!-- Peripherals -->
<Peripherals>
<!-- Embedded SRAM -->
<Peripheral>
<Name>Embedded SRAM</Name>
<Type>Storage</Type>
<Description/>
<ErasedValue>0x00</ErasedValue>
<Access>RWE</Access>
<!-- 512 KB -->
<Configuration>
<Parameters address="0x20000000" name="SRAM" size="0x80000"/>
<Description/>
<Organization>Single</Organization>
<Bank name="Bank 1">
<Field>
<Parameters address="0x20000000" name="SRAM1" occurrence="0x1" size="0x80000"/>
</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="0x1FF0F442" default="0x200000"/>
<BootloaderVersion address="0x1FF0EDBE"/>
<!-- 2MB Single Bank -->
<Configuration config="2,5">
<Parameters address="0x08000000" name=" 2 Mbytes single bank Embedded Flash" size="0x200000"/>
<Description/>
<Organization>Single</Organization>
<Alignment>0x20</Alignment>
<Bank name="Bank 1">
<Field>
<Parameters address="0x08000000" name="sector0" occurrence="0x4" size="0x8000"/>
</Field>
<Field>
<Parameters address="0x08020000" name="sector4" occurrence="0x1" size="0x20000"/>
</Field>
<Field>
<Parameters address="0x08040000" name="sector5" occurrence="0x7" size="0x40000"/>
</Field>
</Bank>
</Configuration>
<!-- 2MB Dual Bank -->
<Configuration config="3,4">
<Parameters address="0x08000000" name=" 2 Mbytes dual bank Embedded Flash" size="0x200000"/>
<Description/>
<Organization>Dual</Organization>
<Alignment>0x10</Alignment>
<Bank name="Bank 1">
<Field>
<Parameters address="0x08000000" name="sector0" occurrence="0x4" size="0x4000"/>
</Field>
<Field>
<Parameters address="0x08010000" name="sector4" occurrence="0x1" size="0x10000"/>
</Field>
<Field>
<Parameters address="0x08020000" name="sector5" occurrence="0x7" size="0x20000"/>
</Field>
</Bank>
<Bank name="Bank 2">
<Field>
<Parameters address="0x08100000" name="sector12" occurrence="0x4" size="0x4000"/>
</Field>
<Field>
<Parameters address="0x08110000" name="sector16" occurrence="0x1" size="0x10000"/>
</Field>
<Field>
<Parameters address="0x08120000" name="sector17" occurrence="0x7" size="0x20000"/>
</Field>
</Bank>
</Configuration>
<!-- 1MB Single Bank -->
<Configuration config="0">
<Parameters address="0x08000000" name=" 1 Mbyte single bank Embedded Flash" size="0x100000"/>
<Description/>
<Organization>Single</Organization>
<Alignment>0x20</Alignment>
<Bank name="Bank 1">
<Field>
<Parameters address="0x08000000" name="sector0" occurrence="0x4" size="0x8000"/>
</Field>
<Field>
<Parameters address="0x08020000" name="sector4" occurrence="0x1" size="0x20000"/>
</Field>
<Field>
<Parameters address="0x08040000" name="sector5" occurrence="0x3" size="0x40000"/>
</Field>
</Bank>
</Configuration>
<!-- 1MB Dual Bank -->
<Configuration config="1">
<Parameters address="0x08000000" name=" 1 Mbyte dual bank Embedded Flash" size="0x100000"/>
<Description/>
<Organization>Dual</Organization>
<Alignment>0x10</Alignment>
<Bank name="Bank 1">
<Field>
<Parameters address="0x08000000" name="sector0" occurrence="0x4" size="0x4000"/>
</Field>
<Field>
<Parameters address="0x08010000" name="sector4" occurrence="0x1" size="0x10000"/>
</Field>
<Field>
<Parameters address="0x08020000" name="sector5" occurrence="0x3" size="0x20000"/>
</Field>
</Bank>
<Bank name="Bank 2">
<Field>
<Parameters address="0x08080000 " name="sector12" occurrence="0x4" size="0x4000"/>
</Field>
<Field>
<Parameters address="0x08090000" name="sector16" occurrence="0x1" size="0x10000"/>
</Field>
<Field>
<Parameters address="0x080A0000" name="sector17" occurrence="0x3" size="0x20000"/>
</Field>
</Bank>
</Configuration>
</Peripheral>
<!-- ITCM FLASH -->
<Peripheral>
<Name>ITCM 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>
<!-- 2MB Single Bank -->
<Configuration config="0,2,5">
<Parameters address="0x00200000" name=" 2 Mbytes single bank Embedded Flash" size="0x200000"/>
<Description/>
<Organization>Single</Organization>
<Alignment>0x20</Alignment>
<Bank name="Bank 1">
<Field>
<Parameters address="0x00200000" name="sector0" occurrence="0x4" size="0x8000"/>
</Field>
<Field>
<Parameters address="0x00220000" name="sector4" occurrence="0x1" size="0x20000"/>
</Field>
<Field>
<Parameters address="0x00240000" name="sector5" occurrence="0x7" size="0x40000"/>
</Field>
</Bank>
</Configuration>
<!-- 2MB Dual Bank -->
<Configuration config="1,3,4">
<Parameters address="0x00200000" name=" 2 Mbytes dual bank Embedded Flash" size="0x200000"/>
<Description/>
<Organization>Dual</Organization>
<Alignment>0x10</Alignment>
<Bank name="Bank 1">
<Field>
<Parameters address="0x00200000" name="sector0" occurrence="0x4" size="0x4000"/>
</Field>
<Field>
<Parameters address="0x00210000" name="sector4" occurrence="0x1" size="0x10000"/>
</Field>
<Field>
<Parameters address="0x00220000" name="sector5" occurrence="0x7" size="0x20000"/>
</Field>
</Bank>
<Bank name="Bank 2">
<Field>
<Parameters address="0x00300000" name="sector12" occurrence="0x4" size="0x4000"/>
</Field>
<Field>
<Parameters address="0x00310000" name="sector16" occurrence="0x1" size="0x10000"/>
</Field>
<Field>
<Parameters address="0x00320000" name="sector17" occurrence="0x7" size="0x20000"/>
</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="0x1FF0F000" name=" 1 KBytes Data OTP" size="0x480"/>
<Description/>
<Organization>Single</Organization>
<Alignment>0x4</Alignment>
<Bank name="OTP">
<Field>
<Parameters address="0x1FF0F000" name="OTP" occurrence="0x1" size="0x480"/>
</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>
<!-- 44 Bytes single bank -->
<Configuration>
<Parameters address="0x1FFF0000" name=" 44 Bytes Data MirrorOptionBytes" size="0x2C"/>
<Description/>
<Organization>Single</Organization>
<Alignment>0x4</Alignment>
<Bank name="MirrorOptionBytes">
<Field>
<Parameters address="0x1FFF0000" name="MirrorOptionBytes" occurrence="0x1" size="0x2C"/>
</Field>
</Bank>
</Configuration>
</Peripheral>
<!-- Option Bytes -->
<Peripheral>
<Name>Option Bytes</Name>
<Type>Configuration</Type>
<Description/>
<Access>RW</Access>
<Bank interface="JTAG_SWD">
<Parameters address="0x40023C14" name="Bank 1" size="0x8"/>
<Category>
<Name>Read Out Protection</Name>
<Field>
<Parameters address="0x40023C14" name="FLASH_OPTCR" 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>0x8</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="0x40023C14" name="FLASH_OPTCR" size="0x4"/>
<AssignedBits>
<Bit>
<Name>BOR_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>0x2</BitOffset>
<BitWidth>0x2</BitWidth>
<Access>RW</Access>
<Values>
<Val value="0x0">BOR Level 3 (VBOR3), brownout threshold level 3</Val>
<Val value="0x1">BOR Level 2 (VBOR2), brownout threshold level 2</Val>
<Val value="0x2">BOR Level 1 (VBOR1), brownout threshold level 1</Val>
<Val value="0x3">BOR off, POR/PDR reset threshold level is applied</Val>
</Values>
</Bit>
</AssignedBits>
</Field>
</Category>
<Category>
<Name>User Configuration</Name>
<Field>
<Parameters address="0x40023C14" name="FLASH_OPTCR" size="0x4"/>
<AssignedBits>
<Bit>
<Name>IWDG_STOP</Name>
<Description/>
<BitOffset>0x1F</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>0x1E</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 reference="DualBank">
<Name>nDBANK</Name>
<Description/>
<BitOffset>0x1D</BitOffset>
<BitWidth>0x1</BitWidth>
<Access>RW</Access>
<Values>
<Val value="0x0">Flash in dual bank with 128 bits read access</Val>
<Val value="0x1">Flash in single bank with 256 bits read access</Val>
</Values>
</Bit>
<Bit config="1,3">
<Name>nDBOOT</Name>
<Description/>
<BitOffset>0x1C</BitOffset>
<BitWidth>0x1</BitWidth>
<Access>RW</Access>
<Values>
<Val value="0x0">Dual Boot enabled</Val>
<Val value="0x1">Dual Boot disabled</Val>
</Values>
</Bit>
<Bit>
<Name>WWDG_SW</Name>
<Description/>
<BitOffset>0x4</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>IWDG_SW</Name>
<Description/>
<BitOffset>0x5</BitOffset>
<BitWidth>0x1</BitWidth>
<Access>RW</Access>
<Values>
<Val value="0x0">Hardware independent watchdog</Val>
<Val value="0x1">Software independent watchdog</Val>
</Values>
</Bit>
<Bit>
<Name>nRST_STOP</Name>
<Description/>
<BitOffset>0x6</BitOffset>
<BitWidth>0x1</BitWidth>
<Access>RW</Access>
<Values>
<Val value="0x0">Reset generated when entering Stop mode</Val>
<Val value="0x1">No reset generated</Val>
</Values>
</Bit>
<Bit>
<Name>nRST_STDBY</Name>
<Description/>
<BitOffset>0x7</BitOffset>
<BitWidth>0x1</BitWidth>
<Access>RW</Access>
<Values>
<Val value="0x0">Reset generated when entering Standby mode</Val>
<Val value="0x1">No reset generated</Val>
</Values>
</Bit>
</AssignedBits>
</Field>
</Category>
<Category>
<Name>Boot address Option Bytes</Name>
<Field>
<Parameters address="0x40023C18" name="FLASH_OPTCR1" size="0x4"/>
<AssignedBits>
<Bit>
<Name>BOOT_ADD0</Name>
<Description>Define the boot address when BOOT0=0</Description>
<BitOffset>0x0</BitOffset>
<BitWidth>0x10</BitWidth>
<Access>RW</Access>
<Equation multiplier="0x4000" offset="0x0"/>
</Bit>
<Bit>
<Name>BOOT_ADD1</Name>
<Description>Define the boot address when BOOT0=1</Description>
<BitOffset>0x10</BitOffset>
<BitWidth>0x10</BitWidth>
<Access>RW</Access>
<Equation multiplier="0x4000" offset="0x0"/>
</Bit>
</AssignedBits>
</Field>
</Category>
<Category>
<Name>Write Protection</Name>
<Field>
<Parameters address="0x40023C14" name="FLASH_OPTCR" size="0x4"/>
<AssignedBits>
<Bit config="0,2,5">
<Name>nWRP0</Name>
<Description/>
<BitOffset>0x10</BitOffset>
<BitWidth>0xC</BitWidth>
<Access>RW</Access>
<Values ByBit="true">
<Val value="0x0">Write protection active on this sector</Val>
<Val value="0x1">Write protection not active on this sector</Val>
</Values>
</Bit>
<Bit config="1,3,4">
<Name>nWRP0</Name>
<Description/>
<BitOffset>0x10</BitOffset>
<BitWidth>0x6</BitWidth>
<Access>RW</Access>
<Values ByBit="true">
<Val value="0x0">Write protection active on bank1 sector 2i and 2i+1</Val>
<Val value="0x1">Write protection not active on bank1 sector 2i, 2i+1</Val>
</Values>
</Bit>
<Bit config="1,3,4">
<Name>nWRP6</Name>
<Description/>
<BitOffset>0x16</BitOffset>
<BitWidth>0x6</BitWidth>
<Access>RW</Access>
<Values ByBit="true">
<Val value="0x0">Write protection active on bank2 sector 2i and 2i+1</Val>
<Val value="0x1">Write protection not active on bank2 sector 2i, 2i+1</Val>
</Values>
</Bit>
</AssignedBits>
</Field>
</Category>
</Bank>
<Bank interface="Bootloader">
<Parameters address="0x1FFF0000" name="Bank 1" size="0x2C"/>
<Category>
<Name>Read Out Protection</Name>
<Field>
<Parameters address="0x1FFF0000" name="FLASH_OPTCR" 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>0x8</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="0x1FFF0000" name="FLASH_OPTCR" size="0x4"/>
<AssignedBits>
<Bit>
<Name>BOR_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>0x2</BitOffset>
<BitWidth>0x2</BitWidth>
<Access>RW</Access>
<Values>
<Val value="0x0">BOR Level 3 (VBOR3), brownout threshold level 3</Val>
<Val value="0x1">BOR Level 2 (VBOR2), brownout threshold level 2</Val>
<Val value="0x2">BOR Level 1 (VBOR1), brownout threshold level 1</Val>
<Val value="0x3">BOR off, POR/PDR reset threshold level is applied</Val>
</Values>
</Bit>
</AssignedBits>
</Field>
</Category>
<Category>
<Name>User Configuration</Name>
<Field>
<Parameters address="0x1FFF0008" name="FLASH_OPTCR" size="0x4"/>
<AssignedBits>
<Bit>
<Name>IWDG_STOP</Name>
<Description/>
<BitOffset>0xF</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>0xE</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 reference="DualBank">
<Name>nDBANK</Name>
<Description/>
<BitOffset>0xD</BitOffset>
<BitWidth>0x1</BitWidth>
<Access>RW</Access>
<Values>
<Val value="0x0">Flash in dual bank with 128 bits read access</Val>
<Val value="0x1">Flash in single bank with 256 bits read access</Val>
</Values>
</Bit>
<Bit config="1,3">
<Name>nDBOOT</Name>
<Description/>
<BitOffset>0xC</BitOffset>
<BitWidth>0x1</BitWidth>
<Access>RW</Access>
<Values>
<Val value="0x0">Dual Boot enabled</Val>
<Val value="0x1">Dual Boot disabled</Val>
</Values>
</Bit>
</AssignedBits>
</Field>
<Field>
<Parameters address="0x1FFF0000" name="FLASH_OPTCR" size="0x4"/>
<AssignedBits>
<Bit>
<Name>WWDG_SW</Name>
<Description/>
<BitOffset>0x4</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>IWDG_SW</Name>
<Description/>
<BitOffset>0x5</BitOffset>
<BitWidth>0x1</BitWidth>
<Access>RW</Access>
<Values>
<Val value="0x0">Hardware independent watchdog</Val>
<Val value="0x1">Software independent watchdog</Val>
</Values>
</Bit>
<Bit>
<Name>nRST_STOP</Name>
<Description/>
<BitOffset>0x6</BitOffset>
<BitWidth>0x1</BitWidth>
<Access>RW</Access>
<Values>
<Val value="0x0">Reset generated when entering Stop mode</Val>
<Val value="0x1">No reset generated</Val>
</Values>
</Bit>
<Bit>
<Name>nRST_STDBY</Name>
<Description/>
<BitOffset>0x7</BitOffset>
<BitWidth>0x1</BitWidth>
<Access>RW</Access>
<Values>
<Val value="0x0">Reset generated when entering Standby mode</Val>
<Val value="0x1">No reset generated</Val>
</Values>
</Bit>
</AssignedBits>
</Field>
</Category>
<Category>
<Name>Boot address Option Bytes</Name>
<Field>
<Parameters address="0x1FFF0010" name="FLASH_OPTCR1" size="0x4"/>
<AssignedBits>
<Bit>
<Name>BOOT_ADD0</Name>
<Description>Define the boot address when BOOT0=0</Description>
<BitOffset>0x0</BitOffset>
<BitWidth>0x10</BitWidth>
<Access>RW</Access>
<Equation multiplier="0x4000" offset="0x0"/>
</Bit>
</AssignedBits>
</Field>
<Field>
<Parameters address="0x1FFF0018" name="FLASH_OPTCR1" size="0x4"/>
<AssignedBits>
<Bit>
<Name>BOOT_ADD1</Name>
<Description>Define the boot address when BOOT0=1</Description>
<BitOffset>0x0</BitOffset>
<BitWidth>0x10</BitWidth>
<Access>RW</Access>
<Equation multiplier="0x4000" offset="0x0"/>
</Bit>
</AssignedBits>
</Field>
</Category>
<Category>
<Name>Write Protection</Name>
<Field>
<Parameters address="0x1FFF0008" name="FLASH_OPTCR1" size="0x4"/>
<AssignedBits>
<Bit config="0">
<Name>nWRP0</Name>
<Description/>
<BitOffset>0x0</BitOffset>
<BitWidth>0xC</BitWidth>
<Access>RW</Access>
<Values ByBit="true">
<Val value="0x0">Write protection active on this sector</Val>
<Val value="0x1">Write protection not active on this sector</Val>
</Values>
</Bit>
<Bit config="1">
<Name>nWRP0</Name>
<Description/>
<BitOffset>0x0</BitOffset>
<BitWidth>0x6</BitWidth>
<Access>RW</Access>
<Values ByBit="true">
<Val value="0x0">Write protection active on bank1 sector 2i and 2i+1</Val>
<Val value="0x1">Write protection not active on bank1 sector 2i, 2i+1</Val>
</Values>
</Bit>
<Bit config="1">
<Name>nWRP6</Name>
<Description/>
<BitOffset>0x6</BitOffset>
<BitWidth>0x6</BitWidth>
<Access>RW</Access>
<Values ByBit="true">
<Val value="0x0">Write protection active on bank2 sector 2i and 2i+1</Val>
<Val value="0x1">Write protection not active on bank2 sector 2i, 2i+1</Val>
</Values>
</Bit>
</AssignedBits>
</Field>
</Category>
</Bank>
</Peripheral>
</Peripherals>
</Device>
</Root>