STM32_Prog_DB_0x460.xml 30 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835
  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>0x460</DeviceID>
  5. <Vendor>STMicroelectronics</Vendor>
  6. <Type>MCU</Type>
  7. <CPU>Cortex-M0+</CPU>
  8. <Name>STM32G07x/STM32G08x</Name>
  9. <Series>STM32G0</Series>
  10. <Description>ARM 32-bit Cortex-M0+ based device</Description>
  11. <Configurations>
  12. <!-- JTAG_SWD Interface -->
  13. <Interface name="JTAG_SWD">
  14. <Configuration number="0x0">
  15. <ValueLine> <ReadRegister address="0x1FFF77DD" mask="0xFF" value="0xFF"/> </ValueLine>
  16. </Configuration>
  17. <Configuration number="0x1">
  18. <ValueLine> <ReadRegister address="0x1FFF77DD" mask="0xFF" value="0x30"/> </ValueLine>
  19. </Configuration>
  20. <Configuration number="0x2">
  21. <ValueLine> <ReadRegister address="0x1FFF77DD" mask="0xFF" value="0x31"/> </ValueLine>
  22. </Configuration>
  23. </Interface>
  24. <!-- Bootloader Interface -->
  25. <Interface name="Bootloader">
  26. <Configurations>
  27. <Configuration number="0x0">
  28. <ValueLine> <ReadRegister address="0x1FFF77DD" mask="0xFF" value="0xFF"/> </ValueLine>
  29. </Configuration>
  30. <Configuration number="0x1">
  31. <ValueLine> <ReadRegister address="0x1FFF77DD" mask="0xFF" value="0x30"/> </ValueLine>
  32. </Configuration>
  33. <Configuration number="0x2">
  34. <ValueLine> <ReadRegister address="0x1FFF77DD" mask="0xFF" value="0x31"/> </ValueLine>
  35. </Configuration>
  36. </Configurations>
  37. </Interface>
  38. </Configurations>
  39. <!-- Peripherals -->
  40. <Peripherals>
  41. <!-- Embedded SRAM -->
  42. <Peripheral>
  43. <Name>Embedded SRAM</Name>
  44. <Type>Storage</Type>
  45. <Description/>
  46. <ErasedValue>0x00</ErasedValue>
  47. <Access>RWE</Access>
  48. <!-- 96 KB -->
  49. <Configuration>
  50. <Parameters address="0x20000000" name="SRAM" size="0x8000"/>
  51. <Description/>
  52. <Organization>Single</Organization>
  53. <Bank name="Bank 1">
  54. <Field>
  55. <Parameters address="0x20000000" name="SRAM" occurence="0x1" size="0x8000"/>
  56. </Field>
  57. </Bank>
  58. </Configuration>
  59. </Peripheral>
  60. <!-- Embedded Flash -->
  61. <Peripheral>
  62. <Name>Embedded Flash</Name>
  63. <Type>Storage</Type>
  64. <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>
  65. <ErasedValue>0xFF</ErasedValue>
  66. <Access>RWE</Access>
  67. <FlashSize address="0x1FFF75E0" default="0x20000"/>
  68. <BootloaderVersion address="0x1FFF6FFE"/>
  69. <DBGMCU_CR address="0x40015804" mask="0x007"/>
  70. <DBGMCU_APB1_FZ address="0x40015808" mask="0x1800"/>
  71. <RCC_APB2ENR address="0x4002103C" mask="0x08000000"/>
  72. <!--<CR address="0x40002C04" mask="0x000001FF"/>-->
  73. <!-- Single Bank -->
  74. <Configuration>
  75. <Parameters address="0x08000000" name=" 128 KB Embedded Flash" size="0x20000"/>
  76. <Description/>
  77. <Organization>Single</Organization>
  78. <Allignement>0x8</Allignement>
  79. <Bank name="Bank 1">
  80. <Field>
  81. <Parameters address="0x08000000" name="sector0" occurence="0x40" size="0x800"/>
  82. </Field>
  83. </Bank>
  84. </Configuration>
  85. </Peripheral>
  86. <!-- OTP -->
  87. <Peripheral>
  88. <Name>OTP</Name>
  89. <Type>Storage</Type>
  90. <Description>The Data OTP memory block. It contains the one time programmable bits.</Description>
  91. <ErasedValue>0xFF</ErasedValue>
  92. <Access>RW</Access>
  93. <!-- 1 KBytes single bank -->
  94. <Configuration>
  95. <Parameters address="0x1FFF7000" name=" 1 KBytes Data OTP" size="0x400"/>
  96. <Description/>
  97. <Organization>Single</Organization>
  98. <Allignement>0x4</Allignement>
  99. <Bank name="OTP">
  100. <Field>
  101. <Parameters address="0x1FFF7000" name="OTP" occurence="0x1" size="0x400"/>
  102. </Field>
  103. </Bank>
  104. </Configuration>
  105. </Peripheral>
  106. <!-- Mirror Option Bytes -->
  107. <Peripheral>
  108. <Name>MirrorOptionBytes</Name>
  109. <Type>Storage</Type>
  110. <Description>Mirror Option Bytes contains the extra area.</Description>
  111. <ErasedValue>0xFF</ErasedValue>
  112. <Access>RW</Access>
  113. <!-- 44 Bytes single bank -->
  114. <Configuration>
  115. <Parameters address="0x1FFF7800" name=" 56 Bytes Data MirrorOptionBytes" size="0x38"/>
  116. <Description/>
  117. <Organization>Dual</Organization>
  118. <Allignement>0x4</Allignement>
  119. <Bank name="Bank 1">
  120. <Field>
  121. <Parameters address="0x1FFF7800" name="Bank1" occurence="0x1" size="0x34"/>
  122. </Field>
  123. </Bank>
  124. <Bank name="Bank 2">
  125. <Field>
  126. <Parameters address="0x1FFF7870" name="Bank2" occurence="0x1" size="0x4"/>
  127. </Field>
  128. </Bank>
  129. </Configuration>
  130. </Peripheral>
  131. <!-- Option Bytes -->
  132. <Peripheral>
  133. <Name>Option Bytes</Name>
  134. <Type>Configuration</Type>
  135. <Description/>
  136. <Access>RW</Access>
  137. <Bank interface="JTAG_SWD">
  138. <Parameters address="0x40022020" name="Bank 1" size="0x70"/>
  139. <Category>
  140. <Name>Read Out Protection</Name>
  141. <Field>
  142. <Parameters address="0x40022020" name="FLASH_OPTR" size="0x4"/>
  143. <AssignedBits>
  144. <Bit>
  145. <Name>RDP</Name>
  146. <Description>Read protection option byte. The read protection is used to protect the software code stored in Flash memory.</Description>
  147. <BitOffset>0x0</BitOffset>
  148. <BitWidth>0x8</BitWidth>
  149. <Access>RW</Access>
  150. <Values>
  151. <Val value="0xAA">Level 0, no protection</Val>
  152. <Val value="0xBB">or any value other than 0xAA and 0xCC: Level 1, read protection</Val>
  153. <Val value="0xCC">Level 2, chip protection</Val>
  154. </Values>
  155. </Bit>
  156. </AssignedBits>
  157. </Field>
  158. </Category>
  159. <Category>
  160. <Name>BOR Level</Name>
  161. <Field>
  162. <Parameters name="FLASH_OPTR" size="0x4" address="0x40022020"/>
  163. <AssignedBits>
  164. <Bit number="0x0,0x2">
  165. <Name>BOR_EN</Name>
  166. <Description/>
  167. <BitOffset>0x8</BitOffset>
  168. <BitWidth>0x1</BitWidth>
  169. <Access>RW</Access>
  170. <Values>
  171. <Val value="0x0">Configurable brown out reset disabled, power-on reset defined by POR/PDR levels</Val>
  172. <Val value="0x1">Configurable brown out reset enabled, values of BORR_LEV and BORF_LEV taken into account</Val>
  173. </Values>
  174. </Bit>
  175. <Bit number="0x0,0x2">
  176. <Name>BORR_LEV</Name>
  177. <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>
  178. <BitOffset>0x9</BitOffset>
  179. <BitWidth>0x2</BitWidth>
  180. <Access>RW</Access>
  181. <Values>
  182. <Val value="0x0">BOR rising level 1 with threshold around 2.1 V</Val>
  183. <Val value="0x1">BOR rising level 2 with threshold around 2.3 V</Val>
  184. <Val value="0x2">BOR rising level 3 with threshold around 2.6 V</Val>
  185. <Val value="0x3">BOR rising level 4 with threshold around 2.9 V</Val>
  186. </Values>
  187. </Bit>
  188. <Bit number="0x0,0x2">
  189. <Name>BORF_LEV</Name>
  190. <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>
  191. <BitOffset>0xB</BitOffset>
  192. <BitWidth>0x2</BitWidth>
  193. <Access>RW</Access>
  194. <Values>
  195. <Val value="0x0">BOR falling level 1 with threshold around 2.0 V</Val>
  196. <Val value="0x1">BOR falling level 2 with threshold around 2.2 V</Val>
  197. <Val value="0x2">BOR falling level 3 with threshold around 2.5 V</Val>
  198. <Val value="0x3">BOR falling level 4 with threshold around 2.8 V</Val>
  199. </Values>
  200. </Bit>
  201. </AssignedBits>
  202. </Field>
  203. </Category>
  204. <Category>
  205. <Name>User Configuration</Name>
  206. <Field>
  207. <Parameters address="0x40022020" name="FLASH_OPTR" size="0x4"/>
  208. <AssignedBits>
  209. <Bit>
  210. <Name>nRST_STOP</Name>
  211. <Description/>
  212. <BitOffset>0xD</BitOffset>
  213. <BitWidth>0x1</BitWidth>
  214. <Access>RW</Access>
  215. <Values>
  216. <Val value="0x0">Reset generated when entering Stop mode</Val>
  217. <Val value="0x1">No reset generated when entering Stop mode</Val>
  218. </Values>
  219. </Bit>
  220. <Bit>
  221. <Name>nRST_STDBY</Name>
  222. <Description/>
  223. <BitOffset>0xE</BitOffset>
  224. <BitWidth>0x1</BitWidth>
  225. <Access>RW</Access>
  226. <Values>
  227. <Val value="0x0">Reset generated when entering Standby mode</Val>
  228. <Val value="0x1">No reset generated when entering Standby mode</Val>
  229. </Values>
  230. </Bit>
  231. <Bit>
  232. <Name>nRST_SHDW</Name>
  233. <Description/>
  234. <BitOffset>0xF</BitOffset>
  235. <BitWidth>0x1</BitWidth>
  236. <Access>RW</Access>
  237. <Values>
  238. <Val value="0x0">Reset generated when entering the Shutdown mode</Val>
  239. <Val value="0x1">No reset generated when entering the Shutdown mode</Val>
  240. </Values>
  241. </Bit>
  242. <Bit>
  243. <Name>IWDG_SW</Name>
  244. <Description/>
  245. <BitOffset>0x10</BitOffset>
  246. <BitWidth>0x1</BitWidth>
  247. <Access>RW</Access>
  248. <Values>
  249. <Val value="0x0">Hardware independant watchdog</Val>
  250. <Val value="0x1">Software independant watchdog</Val>
  251. </Values>
  252. </Bit>
  253. <Bit>
  254. <Name>IWDG_STOP</Name>
  255. <Description/>
  256. <BitOffset>0x11</BitOffset>
  257. <BitWidth>0x1</BitWidth>
  258. <Access>RW</Access>
  259. <Values>
  260. <Val value="0x0">Freeze IWDG counter in stop mode</Val>
  261. <Val value="0x1">IWDG counter active in stop mode</Val>
  262. </Values>
  263. </Bit>
  264. <Bit>
  265. <Name>IWDG_STDBY</Name>
  266. <Description/>
  267. <BitOffset>0x12</BitOffset>
  268. <BitWidth>0x1</BitWidth>
  269. <Access>RW</Access>
  270. <Values>
  271. <Val value="0x0">Freeze IWDG counter in standby mode</Val>
  272. <Val value="0x1">IWDG counter active in standby mode</Val>
  273. </Values>
  274. </Bit>
  275. <Bit>
  276. <Name>WWDG_SW</Name>
  277. <Description/>
  278. <BitOffset>0x13</BitOffset>
  279. <BitWidth>0x1</BitWidth>
  280. <Access>RW</Access>
  281. <Values>
  282. <Val value="0x0">Hardware window watchdog</Val>
  283. <Val value="0x1">Software window watchdog</Val>
  284. </Values>
  285. </Bit>
  286. <Bit>
  287. <Name>RAM_PARITY_CHECK</Name>
  288. <Description/>
  289. <BitOffset>0x16</BitOffset>
  290. <BitWidth>0x1</BitWidth>
  291. <Access>RW</Access>
  292. <Values>
  293. <Val value="0x0">SRAM parity check enable</Val>
  294. <Val value="0x1">SRAM parity check disable</Val>
  295. </Values>
  296. </Bit>
  297. <Bit>
  298. <Name>nBOOT_SEL</Name>
  299. <Description/>
  300. <BitOffset>0x18</BitOffset>
  301. <BitWidth>0x1</BitWidth>
  302. <Access>RW</Access>
  303. <Values>
  304. <Val value="0x0">BOOT0 signal is defined by BOOT0 pin value (legacy mode)</Val>
  305. <Val value="0x1">BOOT0 signal is defined by nBOOT0 option bit</Val>
  306. </Values>
  307. </Bit>
  308. <Bit>
  309. <Name>nBOOT1</Name>
  310. <Description/>
  311. <BitOffset>0x19</BitOffset>
  312. <BitWidth>0x1</BitWidth>
  313. <Access>RW</Access>
  314. <Values>
  315. <Val value="0x0">Boot from Flash if BOOT0 = 0, otherwise Embedded SRAM1</Val>
  316. <Val value="0x1">Boot from Flash if BOOT0 = 0, otherwise system memory</Val>
  317. </Values>
  318. </Bit>
  319. <Bit>
  320. <Name>nBOOT0</Name>
  321. <Description/>
  322. <BitOffset>0x1A</BitOffset>
  323. <BitWidth>0x1</BitWidth>
  324. <Access>RW</Access>
  325. <Values>
  326. <Val value="0x0">nBOOT0=0</Val>
  327. <Val value="0x1">nBOOT0=1</Val>
  328. </Values>
  329. </Bit>
  330. <Bit number="0x0,0x2">
  331. <Name>NRST_MODE</Name>
  332. <Description/>
  333. <BitOffset>0x1B</BitOffset>
  334. <BitWidth>0x2</BitWidth>
  335. <Access>RW</Access>
  336. <Values>
  337. <Val value="0x0">Reserved</Val>
  338. <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>
  339. <Val value="0x2">GPIO: standard GPIO pad functionality, only internal RESET possible</Val>
  340. <Val value="0x3">Bidirectional reset: NRST pin configured in reset input/output mode (legacy mode)</Val>
  341. </Values>
  342. </Bit>
  343. <Bit number="0x0,0x2">
  344. <Name>IRHEN</Name>
  345. <Description>Internal reset holder enable bit</Description>
  346. <BitOffset>0x1D</BitOffset>
  347. <BitWidth>0x1</BitWidth>
  348. <Access>RW</Access>
  349. <Values>
  350. <Val value="0x0">Internal resets are propagated as simple pulse on NRST pin</Val>
  351. <Val value="0x1">Internal resets drives NRST pin low until it is seen as low level</Val>
  352. </Values>
  353. </Bit>
  354. </AssignedBits>
  355. </Field>
  356. </Category>
  357. <Category>
  358. <Name>PCROP Protection</Name>
  359. <Field>
  360. <Parameters address="0x40022024" name="FLASH_PCROP1SR" size="0x4"/>
  361. <AssignedBits>
  362. <Bit>
  363. <Name>PCROP1A_STRT</Name>
  364. <Description>Flash Area A PCROP start address</Description>
  365. <BitOffset>0x0</BitOffset>
  366. <BitWidth>0x9</BitWidth>
  367. <Access>RW</Access>
  368. <Equation multiplier="0x200" offset="0x08000000"/>
  369. </Bit>
  370. </AssignedBits>
  371. </Field>
  372. <Field>
  373. <Parameters address="0x40022028" name="FLASH_PCROP1ER" size="0x4"/>
  374. <AssignedBits>
  375. <Bit>
  376. <Name>PCROP1A_END</Name>
  377. <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>
  378. <BitOffset>0x0</BitOffset>
  379. <BitWidth>0x9</BitWidth>
  380. <Access>RW</Access>
  381. <Equation multiplier="0x200" offset="0x08000200"/>
  382. </Bit>
  383. <Bit>
  384. <Name>PCROP_RDP</Name>
  385. <Description/>
  386. <BitOffset>0x1F</BitOffset>
  387. <BitWidth>0x1</BitWidth>
  388. <Access>RW</Access>
  389. <Values>
  390. <Val value="0x0">PCROP zone is kept when RDP is decreased</Val>
  391. <Val value="0x1">PCROP zone is erased when RDP is decreased</Val>
  392. </Values>
  393. </Bit>
  394. </AssignedBits>
  395. </Field>
  396. <Field>
  397. <Parameters address="0x40022034" name="FLASH_PCROP1BSR" size="0x4"/>
  398. <AssignedBits>
  399. <Bit>
  400. <Name>PCROP1B_STRT</Name>
  401. <Description>Flash Area B PCROP start address</Description>
  402. <BitOffset>0x0</BitOffset>
  403. <BitWidth>0x9</BitWidth>
  404. <Access>RW</Access>
  405. <Equation multiplier="0x200" offset="0x08000000"/>
  406. </Bit>
  407. </AssignedBits>
  408. </Field>
  409. <Field>
  410. <Parameters address="0x40022038" name="FLASH_PCROP1BER" size="0x4"/>
  411. <AssignedBits>
  412. <Bit>
  413. <Name>PCROP1B_END</Name>
  414. <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>
  415. <BitOffset>0x0</BitOffset>
  416. <BitWidth>0x9</BitWidth>
  417. <Access>RW</Access>
  418. <Equation multiplier="0x200" offset="0x08000200"/>
  419. </Bit>
  420. </AssignedBits>
  421. </Field>
  422. </Category>
  423. <Category>
  424. <Name>Write Protection</Name>
  425. <Field>
  426. <Parameters address="0x4002202C" name="FLASH_WRP1AR" size="0x4"/>
  427. <AssignedBits>
  428. <Bit>
  429. <Name>WRP1A_STRT</Name>
  430. <Description>The address of the first page of the Bank 1 WRP first area</Description>
  431. <BitOffset>0x0</BitOffset>
  432. <BitWidth>0x6</BitWidth>
  433. <Access>RW</Access>
  434. <Equation multiplier="0x800" offset="0x08000000"/>
  435. </Bit>
  436. <Bit>
  437. <Name>WRP1A_END</Name>
  438. <Description>The address of the last page of the Bank 1 WRP first area</Description>
  439. <BitOffset>0x10</BitOffset>
  440. <BitWidth>0x6</BitWidth>
  441. <Access>RW</Access>
  442. <Equation multiplier="0x800" offset="0x08000000"/>
  443. </Bit>
  444. </AssignedBits>
  445. </Field>
  446. <Field>
  447. <Parameters address="0x40022030" name="FLASH_WRP1BR" size="0x4"/>
  448. <AssignedBits>
  449. <Bit>
  450. <Name>WRP1B_STRT</Name>
  451. <Description>The address of the first page of the Bank 1 WRP second area</Description>
  452. <BitOffset>0x0</BitOffset>
  453. <BitWidth>0x6</BitWidth>
  454. <Access>RW</Access>
  455. <Equation multiplier="0x800" offset="0x08000000"/>
  456. </Bit>
  457. <Bit>
  458. <Name>WRP1B_END</Name>
  459. <Description>The address of the last page of the Bank 1 WRP second area</Description>
  460. <BitOffset>0x10</BitOffset>
  461. <BitWidth>0x6</BitWidth>
  462. <Access>RW</Access>
  463. <Equation multiplier="0x800" offset="0x08000000"/>
  464. </Bit>
  465. </AssignedBits>
  466. </Field>
  467. </Category>
  468. <Category>
  469. <Name>FLASH security</Name>
  470. <Field>
  471. <Parameters address="0x40022080" name="FLASH_SECR" size="0x4"/>
  472. <AssignedBits>
  473. <Bit>
  474. <Name>BOOT_LOCK</Name>
  475. <Description>used to force boot from user area</Description>
  476. <BitOffset>0x10</BitOffset>
  477. <BitWidth>0x1</BitWidth>
  478. <Access>RW</Access>
  479. <Values>
  480. <Val value="0x0">Boot based on the pad/option bit configuration</Val>
  481. <Val value="0x1">Boot forced from Main Flash memory</Val>
  482. </Values>
  483. </Bit>
  484. <Bit>
  485. <Name>SEC_SIZE</Name>
  486. <Description>Securable memory area size</Description>
  487. <BitOffset>0x0</BitOffset>
  488. <BitWidth>0x7</BitWidth>
  489. <Access>RW</Access>
  490. <Equation multiplier="0x800" offset="0x08000000"/>
  491. </Bit>
  492. </AssignedBits>
  493. </Field>
  494. </Category>
  495. </Bank>
  496. <Bank interface="Bootloader">
  497. <Parameters address="0x1FFF7800" name="Bank 1" size="0x34"/>
  498. <Category>
  499. <Name>Read Out Protection</Name>
  500. <Field>
  501. <Parameters address="0x1FFF7800" name="FLASH_OPTR" size="0x4"/>
  502. <AssignedBits>
  503. <Bit>
  504. <Name>RDP</Name>
  505. <Description>Read protection option byte. The read protection is used to protect the software code stored in Flash memory.</Description>
  506. <BitOffset>0x0</BitOffset>
  507. <BitWidth>0x8</BitWidth>
  508. <Access>RW</Access>
  509. <Values>
  510. <Val value="0xAA">Level 0, no protection</Val>
  511. <Val value="0xBB">or any value other than 0xAA and 0xCC: Level 1, read protection</Val>
  512. <Val value="0xCC">Level 2, chip protection</Val>
  513. </Values>
  514. </Bit>
  515. </AssignedBits>
  516. </Field>
  517. </Category>
  518. <Category>
  519. <Name>BOR Level</Name>
  520. <Field>
  521. <Parameters address="0x1FFF7800" name="FLASH_OPTR" size="0x4"/>
  522. <AssignedBits>
  523. <Bit number="0x0,0x2">
  524. <Name>BOR_EN</Name>
  525. <Description/>
  526. <BitOffset>0x8</BitOffset>
  527. <BitWidth>0x1</BitWidth>
  528. <Access>RW</Access>
  529. <Values>
  530. <Val value="0x0">Configurable brown out reset disabled, power-on reset defined by POR/PDR levels</Val>
  531. <Val value="0x1">Configurable brown out reset enabled, values of BORR_LEV and BORF_LEV taken into account</Val>
  532. </Values>
  533. </Bit>
  534. <Bit number="0x0,0x2">
  535. <Name>BORR_LEV</Name>
  536. <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>
  537. <BitOffset>0x9</BitOffset>
  538. <BitWidth>0x2</BitWidth>
  539. <Access>RW</Access>
  540. <Values>
  541. <Val value="0x0">BOR rising level 1 with threshold around 2.1 V</Val>
  542. <Val value="0x1">BOR rising level 2 with threshold around 2.3 V</Val>
  543. <Val value="0x2">BOR rising level 3 with threshold around 2.6 V</Val>
  544. <Val value="0x3">BOR rising level 4 with threshold around 2.9 V</Val>
  545. </Values>
  546. </Bit>
  547. <Bit number="0x0,0x2">
  548. <Name>BORF_LEV</Name>
  549. <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>
  550. <BitOffset>0xB</BitOffset>
  551. <BitWidth>0x2</BitWidth>
  552. <Access>RW</Access>
  553. <Values>
  554. <Val value="0x0">BOR falling level 1 with threshold around 2.0 V</Val>
  555. <Val value="0x1">BOR falling level 2 with threshold around 2.2 V</Val>
  556. <Val value="0x2">BOR falling level 3 with threshold around 2.5 V</Val>
  557. <Val value="0x3">BOR falling level 4 with threshold around 2.8 V</Val>
  558. </Values>
  559. </Bit>
  560. </AssignedBits>
  561. </Field>
  562. </Category>
  563. <Category>
  564. <Name>User Configuration</Name>
  565. <Field>
  566. <Parameters address="0x1FFF7800" name="FLASH_OPTR" size="0x4"/>
  567. <AssignedBits>
  568. <Bit>
  569. <Name>nRST_STOP</Name>
  570. <Description/>
  571. <BitOffset>0xD</BitOffset>
  572. <BitWidth>0x1</BitWidth>
  573. <Access>RW</Access>
  574. <Values>
  575. <Val value="0x0">Reset generated when entering Stop mode</Val>
  576. <Val value="0x1">No reset generated when entering Stop mode</Val>
  577. </Values>
  578. </Bit>
  579. <Bit>
  580. <Name>nRST_STDBY</Name>
  581. <Description/>
  582. <BitOffset>0xE</BitOffset>
  583. <BitWidth>0x1</BitWidth>
  584. <Access>RW</Access>
  585. <Values>
  586. <Val value="0x0">Reset generated when entering Standby mode</Val>
  587. <Val value="0x1">No reset generated when entering Standby mode</Val>
  588. </Values>
  589. </Bit>
  590. <Bit>
  591. <Name>nRST_SHDW</Name>
  592. <Description/>
  593. <BitOffset>0xF</BitOffset>
  594. <BitWidth>0x1</BitWidth>
  595. <Access>RW</Access>
  596. <Values>
  597. <Val value="0x0">Reset generated when entering the Shutdown mode</Val>
  598. <Val value="0x1">No reset generated when entering the Shutdown mode</Val>
  599. </Values>
  600. </Bit>
  601. <Bit>
  602. <Name>IWDG_SW</Name>
  603. <Description/>
  604. <BitOffset>0x10</BitOffset>
  605. <BitWidth>0x1</BitWidth>
  606. <Access>RW</Access>
  607. <Values>
  608. <Val value="0x0">Hardware independant watchdog</Val>
  609. <Val value="0x1">Software independant watchdog</Val>
  610. </Values>
  611. </Bit>
  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. <Bit>
  635. <Name>WWDG_SW</Name>
  636. <Description/>
  637. <BitOffset>0x13</BitOffset>
  638. <BitWidth>0x1</BitWidth>
  639. <Access>RW</Access>
  640. <Values>
  641. <Val value="0x0">Hardware window watchdog</Val>
  642. <Val value="0x1">Software window watchdog</Val>
  643. </Values>
  644. </Bit>
  645. <Bit>
  646. <Name>RAM_PARITY_CHECK</Name>
  647. <Description/>
  648. <BitOffset>0x16</BitOffset>
  649. <BitWidth>0x1</BitWidth>
  650. <Access>RW</Access>
  651. <Values>
  652. <Val value="0x0">SRAM parity check enable</Val>
  653. <Val value="0x1">SRAM parity check disable</Val>
  654. </Values>
  655. </Bit>
  656. <Bit>
  657. <Name>nBOOT_SEL</Name>
  658. <Description/>
  659. <BitOffset>0x18</BitOffset>
  660. <BitWidth>0x1</BitWidth>
  661. <Access>RW</Access>
  662. <Values>
  663. <Val value="0x0">BOOT0 signal is defined by BOOT0 pin value (legacy mode)</Val>
  664. <Val value="0x1">BOOT0 signal is defined by nBOOT0 option bit</Val>
  665. </Values>
  666. </Bit>
  667. <Bit>
  668. <Name>nBOOT1</Name>
  669. <Description/>
  670. <BitOffset>0x19</BitOffset>
  671. <BitWidth>0x1</BitWidth>
  672. <Access>RW</Access>
  673. <Values>
  674. <Val value="0x0">Boot from Flash if BOOT0 = 1, otherwise Embedded SRAM1</Val>
  675. <Val value="0x1">Boot from Flash if BOOT0 = 1, otherwise system memory</Val>
  676. </Values>
  677. </Bit>
  678. <Bit>
  679. <Name>nBOOT0</Name>
  680. <Description/>
  681. <BitOffset>0x1A</BitOffset>
  682. <BitWidth>0x1</BitWidth>
  683. <Access>RW</Access>
  684. <Values>
  685. <Val value="0x0">nBOOT0=0</Val>
  686. <Val value="0x1">nBOOT0=1</Val>
  687. </Values>
  688. </Bit>
  689. <Bit number="0x0,0x2">
  690. <Name>NRST_MODE</Name>
  691. <Description/>
  692. <BitOffset>0x1B</BitOffset>
  693. <BitWidth>0x2</BitWidth>
  694. <Access>RW</Access>
  695. <Values>
  696. <Val value="0x0">Reserved</Val>
  697. <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>
  698. <Val value="0x2">GPIO: standard GPIO pad functionality, only internal RESET possible</Val>
  699. <Val value="0x3">Bidirectional reset: NRST pin configured in reset input/output mode (legacy mode)</Val>
  700. </Values>
  701. </Bit>
  702. <Bit number="0x0,0x2">
  703. <Name>IRHEN</Name>
  704. <Description>Internal reset holder enable bit</Description>
  705. <BitOffset>0x1D</BitOffset>
  706. <BitWidth>0x1</BitWidth>
  707. <Access>RW</Access>
  708. <Values>
  709. <Val value="0x0">Internal resets are propagated as simple pulse on NRST pin</Val>
  710. <Val value="0x1">Internal resets drives NRST pin low until it is seen as low level</Val>
  711. </Values>
  712. </Bit>
  713. </AssignedBits>
  714. </Field>
  715. </Category>
  716. <Category>
  717. <Name>PCROP Protection</Name>
  718. <Field>
  719. <Parameters address="0x1FFF7808" name="FLASH_PCROP1SR" size="0x4"/>
  720. <AssignedBits>
  721. <Bit>
  722. <Name>PCROP1A_STRT</Name>
  723. <Description>Flash Bank 1 PCROP start address</Description>
  724. <BitOffset>0x0</BitOffset>
  725. <BitWidth>0x9</BitWidth>
  726. <Access>RW</Access>
  727. <Equation multiplier="0x200" offset="0x08000000"/>
  728. </Bit>
  729. </AssignedBits>
  730. </Field>
  731. <Field>
  732. <Parameters address="0x1FFF7810" name="FLASH_PCROP1ER" size="0x4"/>
  733. <AssignedBits>
  734. <Bit>
  735. <Name>PCROP1A_END</Name>
  736. <Description>Flash Bank 1 PCROP End address(excluded). Deactivation of PCROP can be done by enabling PCROP_RDP and changing RDP from level 1 to level 0</Description>
  737. <BitOffset>0x0</BitOffset>
  738. <BitWidth>0x9</BitWidth>
  739. <Access>RW</Access>
  740. <Equation multiplier="0x200" offset="0x08000200"/>
  741. </Bit>
  742. <Bit>
  743. <Name>PCROP_RDP</Name>
  744. <Description/>
  745. <BitOffset>0x1F</BitOffset>
  746. <BitWidth>0x1</BitWidth>
  747. <Access>RW</Access>
  748. <Values>
  749. <Val value="0x0">PCROP zone is kept when RDP is decreased</Val>
  750. <Val value="0x1">PCROP zone is erased when RDP is decreased</Val>
  751. </Values>
  752. </Bit>
  753. </AssignedBits>
  754. </Field>
  755. </Category>
  756. <Category>
  757. <Name>Write Protection</Name>
  758. <Field>
  759. <Parameters address="0x1FFF7818" name="FLASH_WRP1AR" size="0x4"/>
  760. <AssignedBits>
  761. <Bit>
  762. <Name>WRP1A_STRT</Name>
  763. <Description>The address of the first page of the Bank 1 WRP first area</Description>
  764. <BitOffset>0x0</BitOffset>
  765. <BitWidth>0x6</BitWidth>
  766. <Access>RW</Access>
  767. <Equation multiplier="0x800" offset="0x08000000"/>
  768. </Bit>
  769. <Bit>
  770. <Name>WRP1A_END</Name>
  771. <Description>The address of the last page of the Bank 1 WRP first area</Description>
  772. <BitOffset>0x10</BitOffset>
  773. <BitWidth>0x6</BitWidth>
  774. <Access>RW</Access>
  775. <Equation multiplier="0x800" offset="0x08000000"/>
  776. </Bit>
  777. </AssignedBits>
  778. </Field>
  779. <Field>
  780. <Parameters address="0x1FFF7820" name="FLASH_WRP1BR" size="0x4"/>
  781. <AssignedBits>
  782. <Bit>
  783. <Name>WRP1B_STRT</Name>
  784. <Description>The address of the first page of the Bank 1 WRP second area</Description>
  785. <BitOffset>0x0</BitOffset>
  786. <BitWidth>0x6</BitWidth>
  787. <Access>RW</Access>
  788. <Equation multiplier="0x800" offset="0x08000000"/>
  789. </Bit>
  790. <Bit>
  791. <Name>WRP1B_END</Name>
  792. <Description>The address of the last page of the Bank 1 WRP second area</Description>
  793. <BitOffset>0x10</BitOffset>
  794. <BitWidth>0x6</BitWidth>
  795. <Access>RW</Access>
  796. <Equation multiplier="0x800" offset="0x08000000"/>
  797. </Bit>
  798. </AssignedBits>
  799. </Field>
  800. </Category>
  801. </Bank>
  802. <Bank interface="Bootloader">
  803. <Parameters address="0x1FFF7870" name="Bank 2" size="0x4"/>
  804. <Category>
  805. <Name>FLASH security</Name>
  806. <Field>
  807. <Parameters address="0x1FFF7870" name="FLASH_SECR" size="0x4"/>
  808. <AssignedBits>
  809. <Bit>
  810. <Name>BOOT_LOCK</Name>
  811. <Description>used to force boot from user area</Description>
  812. <BitOffset>0x10</BitOffset>
  813. <BitWidth>0x1</BitWidth>
  814. <Access>RW</Access>
  815. <Values>
  816. <Val value="0x0">Boot based on the pad/option bit configuration</Val>
  817. <Val value="0x1">Boot forced from Main Flash memory</Val>
  818. </Values>
  819. </Bit>
  820. <Bit>
  821. <Name>SEC_SIZE</Name>
  822. <Description>Securable memory area size</Description>
  823. <BitOffset>0x0</BitOffset>
  824. <BitWidth>0x7</BitWidth>
  825. <Access>RW</Access>
  826. <Equation multiplier="0x800" offset="0x08000000"/>
  827. </Bit>
  828. </AssignedBits>
  829. </Field>
  830. </Category>
  831. </Bank>
  832. </Peripheral>
  833. </Peripherals>
  834. </Device>
  835. </Root>