STM32_Prog_DB_0x415.xml 31 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <Root xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="SCHVerif.xsd">
  3. <Device>
  4. <DeviceID>0x415</DeviceID>
  5. <Vendor>STMicroelectronics</Vendor>
  6. <Type>MCU</Type>
  7. <CPU>Cortex-M4</CPU>
  8. <Name>STM32L4x1/STM32L475xx/STM32L476xx/STM32L486xx</Name>
  9. <Series>STM32L4</Series>
  10. <Description>ARM 32-bit Cortex-M4 based device</Description>
  11. <Configurations>
  12. <!-- JTAG_SWD Interface -->
  13. <Interface name="JTAG_SWD">
  14. <!-- 1MB Dual Bank-->
  15. <Configuration number="0x0">
  16. <FlashSize>
  17. <ReadRegister address="0x1FFF75E0" mask="0x0000FFFF" value="0x0400"/>
  18. </FlashSize>
  19. </Configuration>
  20. <!-- 512KB Dual Bank-->
  21. <Configuration number="0x1"> <!-- DBANK=0x1-->
  22. <DualBank>
  23. <ReadRegister address="0x40022020" mask="0x200000" value="0x200000"/>
  24. </DualBank>
  25. <FlashSize>
  26. <ReadRegister address="0x1FFF75E0" mask="0x0000FFFF" value="0x0200"/>
  27. </FlashSize>
  28. </Configuration>
  29. <!-- 512KB Single Bank-->
  30. <Configuration number="0x2"> <!-- DBANK=0x0-->
  31. <DualBank>
  32. <ReadRegister address="0x40022020" mask="0x200000" value="0x0"/>
  33. </DualBank>
  34. <FlashSize>
  35. <ReadRegister address="0x1FFF75E0" mask="0x0000FFFF" value="0x0200"/>
  36. </FlashSize>
  37. </Configuration>
  38. <!-- 256KB Dual Bank-->
  39. <Configuration number="0x3"> <!-- DBANK=0x1-->
  40. <DualBank>
  41. <ReadRegister address="0x40022020" mask="0x200000" value="0x200000"/>
  42. </DualBank>
  43. <FlashSize>
  44. <ReadRegister address="0x1FFF75E0" mask="0x0000FFFF" value="0x0100"/>
  45. </FlashSize>
  46. </Configuration>
  47. <!-- 256KB Single Bank-->
  48. <Configuration number="0x4"> <!-- DBANK=0x0-->
  49. <DualBank>
  50. <ReadRegister address="0x40022020" mask="0x200000" value="0x0"/>
  51. </DualBank>
  52. <FlashSize>
  53. <ReadRegister address="0x1FFF75E0" mask="0x0000FFFF" value="0x0100"/>
  54. </FlashSize>
  55. </Configuration>
  56. </Interface>
  57. <!-- Bootloader Interface -->
  58. <Interface name="Bootloader"/>
  59. </Configurations>
  60. <!-- Peripherals -->
  61. <Peripherals>
  62. <!-- Embedded SRAM -->
  63. <Peripheral>
  64. <Name>Embedded SRAM</Name>
  65. <Type>Storage</Type>
  66. <Description/>
  67. <ErasedValue>0x00</ErasedValue>
  68. <Access>RWE</Access>
  69. <!-- 96 KB -->
  70. <Configuration>
  71. <Parameters address="0x20000000" name="SRAM" size="0x18000"/>
  72. <Description/>
  73. <Organization>Single</Organization>
  74. <Bank name="Bank 1">
  75. <Field>
  76. <Parameters address="0x20000000" name="SRAM" occurence="0x1" size="0x18000"/>
  77. </Field>
  78. </Bank>
  79. </Configuration>
  80. </Peripheral>
  81. <!-- Embedded Flash -->
  82. <Peripheral>
  83. <Name>Embedded Flash</Name>
  84. <Type>Storage</Type>
  85. <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>
  86. <ErasedValue>0xFF</ErasedValue>
  87. <Access>RWE</Access>
  88. <FlashSize address="0x1FFF75E0" default="0x100000"/>
  89. <!-- 1MB dual Bank -->
  90. <Configuration config="0">
  91. <Parameters address="0x08000000" name=" 1 Mbyte Embedded Flash" size="0x100000"/>
  92. <Description/>
  93. <Organization>Dual</Organization>
  94. <Allignement>0x8</Allignement>
  95. <Bank name="Bank 1">
  96. <Field>
  97. <Parameters address="0x08000000" name="sector0" occurence="0x100" size="0x800"/>
  98. </Field>
  99. </Bank>
  100. <Bank name="Bank 2">
  101. <Field>
  102. <Parameters address="0x08080000" name="sector256" occurence="0x100" size="0x800"/>
  103. </Field>
  104. </Bank>
  105. </Configuration>
  106. <!-- 512KB dual Bank -->
  107. <Configuration config="1">
  108. <Parameters address="0x08000000" name=" 512 KBbyte Embedded Flash" size="0x80000"/>
  109. <Description/>
  110. <Organization>Dual</Organization>
  111. <Allignement>0x8</Allignement>
  112. <Bank name="Bank 1">
  113. <Field>
  114. <Parameters address="0x08000000" name="sector0" occurence="0x80" size="0x800"/>
  115. </Field>
  116. </Bank>
  117. <Bank name="Bank 2">
  118. <Field>
  119. <Parameters address="0x08040000 " name="sector128" occurence="0x80" size="0x800"/>
  120. </Field>
  121. </Bank>
  122. </Configuration>
  123. <!-- 512KB Single Bank -->
  124. <Configuration config="2">
  125. <Parameters address="0x08000000" name=" 512 KBbyte Embedded Flash" size="0x80000"/>
  126. <Description/>
  127. <Organization>Single</Organization>
  128. <Allignement>0x8</Allignement>
  129. <Bank name="Bank 1">
  130. <Field>
  131. <Parameters address="0x08000000" name="sector0" occurence="0x80" size="0x1000"/>
  132. </Field>
  133. </Bank>
  134. </Configuration>
  135. <!-- 256KB dual Bank -->
  136. <Configuration config="3">
  137. <Parameters address="0x08000000" name=" 256 KBbyte Embedded Flash" size="0x40000"/>
  138. <Description/>
  139. <Organization>Dual</Organization>
  140. <Allignement>0x8</Allignement>
  141. <Bank name="Bank 1">
  142. <Field>
  143. <Parameters address="0x08000000" name="sector0" occurence="0x40" size="0x800"/>
  144. </Field>
  145. </Bank>
  146. <Bank name="Bank 2">
  147. <Field>
  148. <Parameters address="0x08020000 " name="sector65" occurence="0x40" size="0x800"/>
  149. </Field>
  150. </Bank>
  151. </Configuration>
  152. <!-- 256KB Single Bank -->
  153. <Configuration config="4">
  154. <Parameters address="0x08000000" name=" 256 KBbyte Embedded Flash" size="0x40000"/>
  155. <Description/>
  156. <Organization>Single</Organization>
  157. <Allignement>0x8</Allignement>
  158. <Bank name="Bank 1">
  159. <Field>
  160. <Parameters address="0x08000000" name="sector0" occurence="0x80" size="0x800"/>
  161. </Field>
  162. </Bank>
  163. </Configuration>
  164. </Peripheral>
  165. <!-- OTP -->
  166. <Peripheral>
  167. <Name>OTP</Name>
  168. <Type>Storage</Type>
  169. <Description>The Data OTP memory block. It contains the one time programmable bits.</Description>
  170. <ErasedValue>0xFF</ErasedValue>
  171. <Access>RW</Access>
  172. <!-- 1 KBytes single bank -->
  173. <Configuration>
  174. <Parameters address="0x1FFF7000" name=" 1 KBytes Data OTP" size="0x400"/>
  175. <Description/>
  176. <Organization>Single</Organization>
  177. <Allignement>0x4</Allignement>
  178. <Bank name="OTP">
  179. <Field>
  180. <Parameters address="0x1FFF7000" name="OTP" occurence="0x1" size="0x400"/>
  181. </Field>
  182. </Bank>
  183. </Configuration>
  184. </Peripheral>
  185. <!-- Mirror Option Bytes -->
  186. <Peripheral>
  187. <Name>MirrorOptionBytes</Name>
  188. <Type>Storage</Type>
  189. <Description>Mirror Option Bytes contains the extra area.</Description>
  190. <ErasedValue>0xFF</ErasedValue>
  191. <Access>RW</Access>
  192. <!-- 64 Bytes Dual bank -->
  193. <Configuration>
  194. <Parameters address="0x1FFF7800" name=" 64 Bytes Data MirrorOptionBytes" size="0x40"/>
  195. <Description/>
  196. <Organization>Dual</Organization>
  197. <Allignement>0x4</Allignement>
  198. <Bank name="Bank 1">
  199. <Field>
  200. <Parameters address="0x1FFF7800" name="Bank1" occurence="0x1" size="0x24"/>
  201. </Field>
  202. </Bank>
  203. <Bank name="Bank 2">
  204. <Field>
  205. <Parameters address="0x1FFFF808" name="Bank2" occurence="0x1" size="0x1C"/>
  206. </Field>
  207. </Bank>
  208. </Configuration>
  209. </Peripheral>
  210. <!-- Option Bytes -->
  211. <Peripheral>
  212. <Name>Option Bytes</Name>
  213. <Type>Configuration</Type>
  214. <Description/>
  215. <Access>RW</Access>
  216. <Bank interface="JTAG_SWD">
  217. <Parameters address="0x40022020" name="Bank 1" size="0x14"/>
  218. <Category>
  219. <Name>Read Out Protection</Name>
  220. <Field>
  221. <Parameters address="0x40022020" name="FLASH_OPTR" size="0x4"/>
  222. <AssignedBits>
  223. <Bit>
  224. <Name>RDP</Name>
  225. <Description>Read protection option byte. The read protection is used to protect the software code stored in Flash memory.</Description>
  226. <BitOffset>0x0</BitOffset>
  227. <BitWidth>0x8</BitWidth>
  228. <Access>RW</Access>
  229. <Values>
  230. <Val value="0xAA">Level 0, no protection</Val>
  231. <Val value="0xBB">or any value other than 0xAA and 0xCC: Level 1, read protection</Val>
  232. <Val value="0xCC">Level 2, chip protection</Val>
  233. </Values>
  234. </Bit>
  235. </AssignedBits>
  236. </Field>
  237. </Category>
  238. <Category>
  239. <Name>BOR Level</Name>
  240. <Field>
  241. <Parameters address="0x40022020" name="FLASH_OPTR" size="0x4"/>
  242. <AssignedBits>
  243. <Bit>
  244. <Name>BOR_LEV</Name>
  245. <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>
  246. <BitOffset>0x8</BitOffset>
  247. <BitWidth>0x3</BitWidth>
  248. <Access>RW</Access>
  249. <Values>
  250. <Val value="0x0">BOR Level 0, reset level threshold is around 1.7 V</Val>
  251. <Val value="0x1">BOR Level 1, reset level threshold is around 2.0 V</Val>
  252. <Val value="0x2">BOR Level 2, reset level threshold is around 2.2 V</Val>
  253. <Val value="0x3">BOR Level 3, reset level threshold is around 2.5 V</Val>
  254. <Val value="0x4">BOR Level 4, reset level threshold is around 2.8 V</Val>
  255. </Values>
  256. </Bit>
  257. </AssignedBits>
  258. </Field>
  259. </Category>
  260. <Category>
  261. <Name>User Configuration</Name>
  262. <Field>
  263. <Parameters address="0x40022020" name="FLASH_OPTR" size="0x4"/>
  264. <AssignedBits>
  265. <Bit>
  266. <Name>nRST_STOP</Name>
  267. <Description/>
  268. <BitOffset>0xC</BitOffset>
  269. <BitWidth>0x1</BitWidth>
  270. <Access>RW</Access>
  271. <Values>
  272. <Val value="0x0">Reset generated when entering Stop mode</Val>
  273. <Val value="0x1">No reset generated when entering Stop mode</Val>
  274. </Values>
  275. </Bit>
  276. <Bit>
  277. <Name>nRST_STDBY</Name>
  278. <Description/>
  279. <BitOffset>0xD</BitOffset>
  280. <BitWidth>0x1</BitWidth>
  281. <Access>RW</Access>
  282. <Values>
  283. <Val value="0x0">Reset generated when entering Standby mode</Val>
  284. <Val value="0x1">No reset generated when entering Standby mode</Val>
  285. </Values>
  286. </Bit>
  287. <Bit>
  288. <Name>nRST_SHDW</Name>
  289. <Description/>
  290. <BitOffset>0xE</BitOffset>
  291. <BitWidth>0x1</BitWidth>
  292. <Access>RW</Access>
  293. <Values>
  294. <Val value="0x0">Reset generated when entering the Shutdown mode</Val>
  295. <Val value="0x1">No reset generated when entering the Shutdown mode</Val>
  296. </Values>
  297. </Bit>
  298. <Bit>
  299. <Name>IWDG_SW</Name>
  300. <Description/>
  301. <BitOffset>0x10</BitOffset>
  302. <BitWidth>0x1</BitWidth>
  303. <Access>RW</Access>
  304. <Values>
  305. <Val value="0x0">Hardware independant watchdog</Val>
  306. <Val value="0x1">Software independant watchdog</Val>
  307. </Values>
  308. </Bit>
  309. <Bit>
  310. <Name>IWDG_STOP</Name>
  311. <Description/>
  312. <BitOffset>0x11</BitOffset>
  313. <BitWidth>0x1</BitWidth>
  314. <Access>RW</Access>
  315. <Values>
  316. <Val value="0x0">Freeze IWDG counter in stop mode</Val>
  317. <Val value="0x1">IWDG counter active in stop mode</Val>
  318. </Values>
  319. </Bit>
  320. <Bit>
  321. <Name>IWDG_STDBY</Name>
  322. <Description/>
  323. <BitOffset>0x12</BitOffset>
  324. <BitWidth>0x1</BitWidth>
  325. <Access>RW</Access>
  326. <Values>
  327. <Val value="0x0">Freeze IWDG counter in standby mode</Val>
  328. <Val value="0x1">IWDG counter active in standby mode</Val>
  329. </Values>
  330. </Bit>
  331. <Bit>
  332. <Name>WWDG_SW</Name>
  333. <Description/>
  334. <BitOffset>0x13</BitOffset>
  335. <BitWidth>0x1</BitWidth>
  336. <Access>RW</Access>
  337. <Values>
  338. <Val value="0x0">Hardware window watchdog</Val>
  339. <Val value="0x1">Software window watchdog</Val>
  340. </Values>
  341. </Bit>
  342. <Bit>
  343. <Name>BFB2</Name>
  344. <Description/>
  345. <BitOffset>0x14</BitOffset>
  346. <BitWidth>0x1</BitWidth>
  347. <Access>RW</Access>
  348. <Values>
  349. <Val value="0x0">Dual-bank boot disable</Val>
  350. <Val value="0x1">Dual-bank boot enable</Val>
  351. </Values>
  352. </Bit>
  353. <Bit config="1,2,3,4">
  354. <Name>DualBank</Name>
  355. <Description/>
  356. <BitOffset>0x15</BitOffset>
  357. <BitWidth>0x1</BitWidth>
  358. <Access>RW</Access>
  359. <Values>
  360. <Val value="0x0">256 KB/512 KB Single-bank Flash: Contiguous addresses in Bank 1</Val>
  361. <Val value="0x1">256 KB/512 KB Dual-bank Flash</Val>
  362. </Values>
  363. </Bit>
  364. <Bit>
  365. <Name>nBOOT1</Name>
  366. <Description/>
  367. <BitOffset>0x17</BitOffset>
  368. <BitWidth>0x1</BitWidth>
  369. <Access>RW</Access>
  370. <Values>
  371. <Val value="0x0">Boot from Flash if BOOT0 = 0, otherwise Embedded SRAM1</Val>
  372. <Val value="0x1">Boot from Flash if BOOT0 = 0, otherwise system memory</Val>
  373. </Values>
  374. </Bit>
  375. <Bit>
  376. <Name>SRAM2_PE</Name>
  377. <Description/>
  378. <BitOffset>0x18</BitOffset>
  379. <BitWidth>0x1</BitWidth>
  380. <Access>RW</Access>
  381. <Values>
  382. <Val value="0x0">SRAM2 parity check enable</Val>
  383. <Val value="0x1">SRAM2 parity check disable</Val>
  384. </Values>
  385. </Bit>
  386. <Bit>
  387. <Name>SRAM2_RST</Name>
  388. <Description/>
  389. <BitOffset>0x19</BitOffset>
  390. <BitWidth>0x1</BitWidth>
  391. <Access>RW</Access>
  392. <Values>
  393. <Val value="0x0">SRAM2 erased when a system reset occurs</Val>
  394. <Val value="0x1">SRAM2 is not erased when a system reset occurs</Val>
  395. </Values>
  396. </Bit>
  397. </AssignedBits>
  398. </Field>
  399. </Category>
  400. <Category>
  401. <Name>PCROP Protection (Bank 1)</Name>
  402. <Field>
  403. <Parameters address="0x40022024" name="FLASH_PCROP1SR" size="0x4"/>
  404. <AssignedBits>
  405. <Bit>
  406. <Name>PCROP1_STRT</Name>
  407. <Description>Flash Bank 1 PCROP start address</Description>
  408. <BitOffset>0x0</BitOffset>
  409. <BitWidth>0x10</BitWidth>
  410. <Access>RW</Access>
  411. <Equation multiplier="0x8" offset="0x08000000"/>
  412. </Bit>
  413. </AssignedBits>
  414. </Field>
  415. <Field>
  416. <Parameters address="0x40022028" name="FLASH_PCROP1ER" size="0x4"/>
  417. <AssignedBits>
  418. <Bit>
  419. <Name>PCROP1_END</Name>
  420. <Description>Flash Bank 1 PCROP End address. Deactivation of PCROP can be done by enabling PCROP_RDP and changing RDP from level 1 to level 0</Description>
  421. <BitOffset>0x0</BitOffset>
  422. <BitWidth>0x10</BitWidth>
  423. <Access>RW</Access>
  424. <Equation multiplier="0x8" offset="0x08000000"/>
  425. </Bit>
  426. <Bit>
  427. <Name>PCROP_RDP</Name>
  428. <Description/>
  429. <BitOffset>0x1F</BitOffset>
  430. <BitWidth>0x1</BitWidth>
  431. <Access>RW</Access>
  432. <Values>
  433. <Val value="0x0">PCROP zone is kept when RDP is decreased</Val>
  434. <Val value="0x1">PCROP zone is erased when RDP is decreased</Val>
  435. </Values>
  436. </Bit>
  437. </AssignedBits>
  438. </Field>
  439. </Category>
  440. <Category>
  441. <Name>Write Protection (Bank 1)</Name>
  442. <Field>
  443. <Parameters address="0x4002202C" name="FLASH_WRP1AR" size="0x4"/>
  444. <AssignedBits>
  445. <Bit>
  446. <Name>WRP1A_STRT</Name>
  447. <Description>The address of the first page of the Bank 1 WRP first area</Description>
  448. <BitOffset>0x0</BitOffset>
  449. <BitWidth>0x8</BitWidth>
  450. <Access>RW</Access>
  451. <Equation multiplier="0x800" offset="0x08000000"/>
  452. </Bit>
  453. <Bit>
  454. <Name>WRP1A_END</Name>
  455. <Description>The address of the last page of the Bank 1 WRP first area</Description>
  456. <BitOffset>0x10</BitOffset>
  457. <BitWidth>0x8</BitWidth>
  458. <Access>RW</Access>
  459. <Equation multiplier="0x800" offset="0x08000000"/>
  460. </Bit>
  461. </AssignedBits>
  462. </Field>
  463. <Field>
  464. <Parameters address="0x40022030" name="FLASH_WRP1BR" size="0x4"/>
  465. <AssignedBits>
  466. <Bit>
  467. <Name>WRP1B_STRT</Name>
  468. <Description>The address of the first page of the Bank 1 WRP second area</Description>
  469. <BitOffset>0x0</BitOffset>
  470. <BitWidth>0x8</BitWidth>
  471. <Access>RW</Access>
  472. <Equation multiplier="0x800" offset="0x08000000"/>
  473. </Bit>
  474. <Bit>
  475. <Name>WRP1B_END</Name>
  476. <Description>The address of the last page of the Bank 1 WRP second area</Description>
  477. <BitOffset>0x10</BitOffset>
  478. <BitWidth>0x8</BitWidth>
  479. <Access>RW</Access>
  480. <Equation multiplier="0x800" offset="0x08000000"/>
  481. </Bit>
  482. </AssignedBits>
  483. </Field>
  484. </Category>
  485. </Bank>
  486. <Bank interface="JTAG_SWD">
  487. <Parameters address="0x40022044" name="Bank 2" size="0x10"/>
  488. <Category>
  489. <Name>PCROP Protection (Bank 2)</Name>
  490. <Field>
  491. <Parameters address="0x40022044" name="FLASH_PCROP2SR" size="0x4"/>
  492. <AssignedBits>
  493. <Bit>
  494. <Name>PCROP2_STRT</Name>
  495. <Description>Flash Bank 2 PCROP start address</Description>
  496. <BitOffset>0x0</BitOffset>
  497. <BitWidth>0x10</BitWidth>
  498. <Access>RW</Access>
  499. <Equation multiplier="0x8" offset="0x08080000"/>
  500. </Bit>
  501. </AssignedBits>
  502. </Field>
  503. <Field>
  504. <Parameters address="0x40022048" name="FLASH_PCROP2ER" size="0x4"/>
  505. <AssignedBits>
  506. <Bit>
  507. <Name>PCROP2_END</Name>
  508. <Description>Flash Bank 2 PCROP End address. Deactivation of PCROP can be done by enabling PCROP_RDP and changing RDP from level 1 to level 0</Description>
  509. <BitOffset>0x0</BitOffset>
  510. <BitWidth>0x10</BitWidth>
  511. <Access>RW</Access>
  512. <Equation multiplier="0x8" offset="0x08080000"/>
  513. </Bit>
  514. </AssignedBits>
  515. </Field>
  516. </Category>
  517. <Category>
  518. <Name>Write Protection (Bank 2)</Name>
  519. <Field>
  520. <Parameters address="0x4002204C" name="FLASH_WRP2AR" size="0x4"/>
  521. <AssignedBits>
  522. <Bit>
  523. <Name>WRP2A_STRT</Name>
  524. <Description>The address of first page of the Bank 2 WRP first area</Description>
  525. <BitOffset>0x0</BitOffset>
  526. <BitWidth>0x8</BitWidth>
  527. <Access>RW</Access>
  528. <Equation multiplier="0x800" offset="0x08080000"/>
  529. </Bit>
  530. <Bit>
  531. <Name>WRP2A_END</Name>
  532. <Description>The address of last page of the Bank 2 WRP first area</Description>
  533. <BitOffset>0x10</BitOffset>
  534. <BitWidth>0x8</BitWidth>
  535. <Access>RW</Access>
  536. <Equation multiplier="0x800" offset="0x08080000"/>
  537. </Bit>
  538. </AssignedBits>
  539. </Field>
  540. <Field>
  541. <Parameters address="0x40022050" name="FLASH_WRP2BR" size="0x4"/>
  542. <AssignedBits>
  543. <Bit>
  544. <Name>WRP2B_STRT</Name>
  545. <Description>The address of first page of the Bank 2 WRP second area</Description>
  546. <BitOffset>0x0</BitOffset>
  547. <BitWidth>0x8</BitWidth>
  548. <Access>RW</Access>
  549. <Equation multiplier="0x800" offset="0x08080000"/>
  550. </Bit>
  551. <Bit>
  552. <Name>WRP2B_END</Name>
  553. <Description>The address of last page of the Bank 2 WRP second area</Description>
  554. <BitOffset>0x10</BitOffset>
  555. <BitWidth>0x8</BitWidth>
  556. <Access>RW</Access>
  557. <Equation multiplier="0x800" offset="0x08080000"/>
  558. </Bit>
  559. </AssignedBits>
  560. </Field>
  561. </Category>
  562. </Bank>
  563. <Bank interface="Bootloader">
  564. <Parameters address="0x1FFF7800" name="Bank 1" size="0x24"/>
  565. <Category>
  566. <Name>Read Out Protection</Name>
  567. <Field>
  568. <Parameters address="0x1FFF7800" name="FLASH_OPTR" size="0x4"/>
  569. <AssignedBits>
  570. <Bit>
  571. <Name>RDP</Name>
  572. <Description>Read protection option byte. The read protection is used to protect the software code stored in Flash memory.</Description>
  573. <BitOffset>0x0</BitOffset>
  574. <BitWidth>0x8</BitWidth>
  575. <Access>RW</Access>
  576. <Values>
  577. <Val value="0xAA">Level 0, no protection</Val>
  578. <Val value="0xBB">or any value other than 0xAA and 0xCC: Level 1, read protection</Val>
  579. <Val value="0xCC">Level 2, chip protection</Val>
  580. </Values>
  581. </Bit>
  582. </AssignedBits>
  583. </Field>
  584. </Category>
  585. <Category>
  586. <Name>BOR Level</Name>
  587. <Field>
  588. <Parameters address="0x1FFF7800" name="FLASH_OPTR" size="0x4"/>
  589. <AssignedBits>
  590. <Bit>
  591. <Name>BOR_LEV</Name>
  592. <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>
  593. <BitOffset>0x8</BitOffset>
  594. <BitWidth>0x3</BitWidth>
  595. <Access>RW</Access>
  596. <Values>
  597. <Val value="0x0">BOR Level 0, reset level threshold is around 1.7 V</Val>
  598. <Val value="0x1">BOR Level 1, reset level threshold is around 2.0 V</Val>
  599. <Val value="0x2">BOR Level 2, reset level threshold is around 2.2 V</Val>
  600. <Val value="0x3">BOR Level 3, reset level threshold is around 2.5 V</Val>
  601. <Val value="0x4">BOR Level 4, reset level threshold is around 2.8 V</Val>
  602. </Values>
  603. </Bit>
  604. </AssignedBits>
  605. </Field>
  606. </Category>
  607. <Category>
  608. <Name>User Configuration</Name>
  609. <Field>
  610. <Parameters address="0x1FFF7800" name="FLASH_OPTR" size="0x4"/>
  611. <AssignedBits>
  612. <Bit>
  613. <Name>IWDG_STOP</Name>
  614. <Description/>
  615. <BitOffset>0x11</BitOffset>
  616. <BitWidth>0x1</BitWidth>
  617. <Access>RW</Access>
  618. <Values>
  619. <Val value="0x0">Freeze IWDG counter in stop mode</Val>
  620. <Val value="0x1">IWDG counter active in stop mode</Val>
  621. </Values>
  622. </Bit>
  623. <Bit>
  624. <Name>IWDG_STDBY</Name>
  625. <Description/>
  626. <BitOffset>0x12</BitOffset>
  627. <BitWidth>0x1</BitWidth>
  628. <Access>RW</Access>
  629. <Values>
  630. <Val value="0x0">Freeze IWDG counter in standby mode</Val>
  631. <Val value="0x1">IWDG counter active in standby mode</Val>
  632. </Values>
  633. </Bit>
  634. </AssignedBits>
  635. </Field>
  636. <Field>
  637. <Parameters address="0x1FFF7800" name="FLASH_OPTR" size="0x4"/>
  638. <AssignedBits>
  639. <Bit>
  640. <Name>WWDG_SW</Name>
  641. <Description/>
  642. <BitOffset>0x13</BitOffset>
  643. <BitWidth>0x1</BitWidth>
  644. <Access>RW</Access>
  645. <Values>
  646. <Val value="0x0">Hardware window watchdog</Val>
  647. <Val value="0x1">Software window watchdog</Val>
  648. </Values>
  649. </Bit>
  650. <Bit>
  651. <Name>IWDG_SW</Name>
  652. <Description/>
  653. <BitOffset>0x10</BitOffset>
  654. <BitWidth>0x1</BitWidth>
  655. <Access>RW</Access>
  656. <Values>
  657. <Val value="0x0">Hardware independant watchdog</Val>
  658. <Val value="0x1">Software independant watchdog</Val>
  659. </Values>
  660. </Bit>
  661. <Bit>
  662. <Name>nRST_STOP</Name>
  663. <Description/>
  664. <BitOffset>0xC</BitOffset>
  665. <BitWidth>0x1</BitWidth>
  666. <Access>RW</Access>
  667. <Values>
  668. <Val value="0x0">Reset generated when entering Stop mode</Val>
  669. <Val value="0x1">No reset generated</Val>
  670. </Values>
  671. </Bit>
  672. <Bit>
  673. <Name>nRST_STDBY</Name>
  674. <Description/>
  675. <BitOffset>0xD</BitOffset>
  676. <BitWidth>0x1</BitWidth>
  677. <Access>RW</Access>
  678. <Values>
  679. <Val value="0x0">Reset generated when entering Standby mode</Val>
  680. <Val value="0x1">No reset generated</Val>
  681. </Values>
  682. </Bit>
  683. <Bit>
  684. <Name>nRST_SHDW</Name>
  685. <Description/>
  686. <BitOffset>0xE</BitOffset>
  687. <BitWidth>0x1</BitWidth>
  688. <Access>RW</Access>
  689. <Values>
  690. <Val value="0x0">Reset generated when entering the Shutdown mode</Val>
  691. <Val value="0x1">No reset generated when entering the Shutdown mode</Val>
  692. </Values>
  693. </Bit>
  694. <Bit>
  695. <Name>BFB2</Name>
  696. <Description/>
  697. <BitOffset>0x14</BitOffset>
  698. <BitWidth>0x1</BitWidth>
  699. <Access>RW</Access>
  700. <Values>
  701. <Val value="0x0">Dual-bank boot disable</Val>
  702. <Val value="0x1">Dual-bank boot enable</Val>
  703. </Values>
  704. </Bit>
  705. <Bit>
  706. <Name>nBOOT1</Name>
  707. <Description/>
  708. <BitOffset>0x17</BitOffset>
  709. <BitWidth>0x1</BitWidth>
  710. <Access>RW</Access>
  711. <Values>
  712. <Val value="0x0">Boot from Flash if BOOT0 = 0, otherwise Embedded SRAM1</Val>
  713. <Val value="0x1">Boot from Flash if BOOT0 = 0, otherwise system memory</Val>
  714. </Values>
  715. </Bit>
  716. <Bit>
  717. <Name>SRAM2_PE</Name>
  718. <Description/>
  719. <BitOffset>0x18</BitOffset>
  720. <BitWidth>0x1</BitWidth>
  721. <Access>RW</Access>
  722. <Values>
  723. <Val value="0x0">SRAM2 parity check enable</Val>
  724. <Val value="0x1">SRAM2 parity check disable</Val>
  725. </Values>
  726. </Bit>
  727. <Bit>
  728. <Name>SRAM2_RST</Name>
  729. <Description/>
  730. <BitOffset>0x19</BitOffset>
  731. <BitWidth>0x1</BitWidth>
  732. <Access>RW</Access>
  733. <Values>
  734. <Val value="0x0">SRAM2 erased when a system reset occurs</Val>
  735. <Val value="0x1">SRAM2 is not erased when a system reset occurs</Val>
  736. </Values>
  737. </Bit>
  738. </AssignedBits>
  739. </Field>
  740. </Category>
  741. <Category>
  742. <Name>PCROP Protection (Bank 1)</Name>
  743. <Field>
  744. <Parameters address="0x1FFF7808" name="FLASH_PCROP1SR" size="0x4"/>
  745. <AssignedBits>
  746. <Bit>
  747. <Name>PCROP1_STRT</Name>
  748. <Description>Flash Bank 1 PCROP start address</Description>
  749. <BitOffset>0x0</BitOffset>
  750. <BitWidth>0x10</BitWidth>
  751. <Access>RW</Access>
  752. <Equation multiplier="0x8" offset="0x08000000"/>
  753. </Bit>
  754. </AssignedBits>
  755. </Field>
  756. <Field>
  757. <Parameters address="0x1FFF7810" name="FLASH_PCROP1ER" size="0x4"/>
  758. <AssignedBits>
  759. <Bit>
  760. <Name>PCROP1_END</Name>
  761. <Description>Flash Bank 1 PCROP End address. Deactivation of PCROP can be done by enabling PCROP_RDP and changing RDP from level 1 to level 0</Description>
  762. <BitOffset>0x0</BitOffset>
  763. <BitWidth>0x10</BitWidth>
  764. <Access>RW</Access>
  765. <Equation multiplier="0x8" offset="0x08000000"/>
  766. </Bit>
  767. <Bit>
  768. <Name>PCROP_RDP</Name>
  769. <Description/>
  770. <BitOffset>0x1F</BitOffset>
  771. <BitWidth>0x1</BitWidth>
  772. <Access>RW</Access>
  773. <Values>
  774. <Val value="0x0">PCROP zone is kept when RDP is decreased</Val>
  775. <Val value="0x1">PCROP zone is erased when RDP is decreased</Val>
  776. </Values>
  777. </Bit>
  778. </AssignedBits>
  779. </Field>
  780. </Category>
  781. <Category>
  782. <Name>Write Protection (Bank 1)</Name>
  783. <Field>
  784. <Parameters address="0x1FFF7818" name="FLASH_WRP1AR" size="0x4"/>
  785. <AssignedBits>
  786. <Bit>
  787. <Name>WRP1A_STRT</Name>
  788. <Description>The address of the first page of the Bank 1 WRP first area</Description>
  789. <BitOffset>0x0</BitOffset>
  790. <BitWidth>0x8</BitWidth>
  791. <Access>RW</Access>
  792. <Equation multiplier="0x800" offset="0x08000000"/>
  793. </Bit>
  794. <Bit>
  795. <Name>WRP1A_END</Name>
  796. <Description>The address of the last page of the Bank 1 WRP first area</Description>
  797. <BitOffset>0x10</BitOffset>
  798. <BitWidth>0x8</BitWidth>
  799. <Access>RW</Access>
  800. <Equation multiplier="0x800" offset="0x08000000"/>
  801. </Bit>
  802. </AssignedBits>
  803. </Field>
  804. <Field>
  805. <Parameters address="0x1FFF7820" name="FLASH_WRP1BR" size="0x4"/>
  806. <AssignedBits>
  807. <Bit>
  808. <Name>WRP1B_STRT</Name>
  809. <Description>The address of the first page of the Bank 1 WRP second area</Description>
  810. <BitOffset>0x0</BitOffset>
  811. <BitWidth>0x8</BitWidth>
  812. <Access>RW</Access>
  813. <Equation multiplier="0x800" offset="0x08000000"/>
  814. </Bit>
  815. <Bit>
  816. <Name>WRP1B_END</Name>
  817. <Description>The address of the last page of the Bank 1 WRP second area</Description>
  818. <BitOffset>0x10</BitOffset>
  819. <BitWidth>0x8</BitWidth>
  820. <Access>RW</Access>
  821. <Equation multiplier="0x800" offset="0x08000000"/>
  822. </Bit>
  823. </AssignedBits>
  824. </Field>
  825. </Category>
  826. </Bank>
  827. <Bank interface="Bootloader">
  828. <Parameters address="0x1FFFF808" name="Bank 2" size="0x1C"/>
  829. <Category>
  830. <Name>PCROP Protection (Bank 2)</Name>
  831. <Field>
  832. <Parameters address="0x1FFFF808" name="FLASH_PCROP2SR" size="0x4"/>
  833. <AssignedBits>
  834. <Bit>
  835. <Name>PCROP2_STRT</Name>
  836. <Description>Flash Bank 2 PCROP start address</Description>
  837. <BitOffset>0x0</BitOffset>
  838. <BitWidth>0x10</BitWidth>
  839. <Access>RW</Access>
  840. <Equation multiplier="0x8" offset="0x08080000"/>
  841. </Bit>
  842. </AssignedBits>
  843. </Field>
  844. <Field>
  845. <Parameters address="0x1FFFF810" name="FLASH_PCROP2ER" size="0x4"/>
  846. <AssignedBits>
  847. <Bit>
  848. <Name>PCROP2_END</Name>
  849. <Description>Flash Bank 2 PCROP End address. Deactivation of PCROP can be done by enabling PCROP_RDP and changing RDP from level 1 to level 0</Description>
  850. <BitOffset>0x0</BitOffset>
  851. <BitWidth>0x10</BitWidth>
  852. <Access>RW</Access>
  853. <Equation multiplier="0x8" offset="0x08080000"/>
  854. </Bit>
  855. </AssignedBits>
  856. </Field>
  857. </Category>
  858. <Category>
  859. <Name>Write Protection (Bank 2)</Name>
  860. <Field>
  861. <Parameters address="0x1FFFF818" name="FLASH_WRP2AR" size="0x4"/>
  862. <AssignedBits>
  863. <Bit>
  864. <Name>WRP2A_STRT</Name>
  865. <Description>The address of first page of the Bank 2 WRP first area</Description>
  866. <BitOffset>0x0</BitOffset>
  867. <BitWidth>0x8</BitWidth>
  868. <Access>RW</Access>
  869. <Equation multiplier="0x800" offset="0x08080000"/>
  870. </Bit>
  871. <Bit>
  872. <Name>WRP2A_END</Name>
  873. <Description>The address of last page of the Bank 2 WRP first area</Description>
  874. <BitOffset>0x10</BitOffset>
  875. <BitWidth>0x8</BitWidth>
  876. <Access>RW</Access>
  877. <Equation multiplier="0x800" offset="0x08080000"/>
  878. </Bit>
  879. </AssignedBits>
  880. </Field>
  881. <Field>
  882. <Parameters address="0x1FFFF820" name="FLASH_WRP2BR" size="0x4"/>
  883. <AssignedBits>
  884. <Bit>
  885. <Name>WRP2B_STRT</Name>
  886. <Description>The address of first page of the Bank 2 WRP second area</Description>
  887. <BitOffset>0x0</BitOffset>
  888. <BitWidth>0x8</BitWidth>
  889. <Access>RW</Access>
  890. <Equation multiplier="0x20" offset="0x08080000"/>
  891. </Bit>
  892. <Bit>
  893. <Name>WRP2B_END</Name>
  894. <Description>The address of last page of the Bank 2 WRP second area</Description>
  895. <BitOffset>0x10</BitOffset>
  896. <BitWidth>0x8</BitWidth>
  897. <Access>RW</Access>
  898. <Equation multiplier="0x800" offset="0x08080000"/>
  899. </Bit>
  900. </AssignedBits>
  901. </Field>
  902. </Category>
  903. </Bank>
  904. </Peripheral>
  905. </Peripherals>
  906. </Device>
  907. </Root>