Release_Notes.html 35 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829
  1. <!DOCTYPE html>
  2. <html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
  3. <head>
  4. <meta charset="utf-8" />
  5. <meta name="generator" content="pandoc" />
  6. <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" />
  7. <title>Release Notes for STM32F4xx CMSIS</title>
  8. <style type="text/css">
  9. code{white-space: pre-wrap;}
  10. span.smallcaps{font-variant: small-caps;}
  11. span.underline{text-decoration: underline;}
  12. div.column{display: inline-block; vertical-align: top; width: 50%;}
  13. </style>
  14. <link rel="stylesheet" href="_htmresc/mini-st_2020.css" />
  15. <!--[if lt IE 9]>
  16. <script src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.3/html5shiv-printshiv.min.js"></script>
  17. <![endif]-->
  18. <link rel="icon" type="image/x-icon" href="_htmresc/favicon.png" />
  19. </head>
  20. <body>
  21. <div class="row">
  22. <div class="col-sm-12 col-lg-4">
  23. <center>
  24. <h1 id="release-notes-for">Release Notes for</h1>
  25. <h1 id="stm32f4xx-cmsis"><mark>STM32F4xx CMSIS</mark></h1>
  26. <p>Copyright © 2017 STMicroelectronics<br />
  27. </p>
  28. <a href="https://www.st.com" class="logo"><img src="_htmresc/st_logo_2020.png" alt="ST logo" /></a>
  29. </center>
  30. <h1 id="purpose">Purpose</h1>
  31. <p>This driver provides the CMSIS device for the stm32f4xx products.</p>
  32. </div>
  33. <div class="col-sm-12 col-lg-8">
  34. <h1 id="update-history">Update History</h1>
  35. <div class="collapse">
  36. <input type="checkbox" id="collapse-section32" checked aria-hidden="true"> <label for="collapse-section32" aria-hidden="true">V2.6.10 / 31-May-2024</label>
  37. <div>
  38. <h2 id="main-changes">Main Changes</h2>
  39. <ul>
  40. <li>Add MCO2PRE[2:0] and MCO2[1:0] bits definition within CMSIS files.</li>
  41. </ul>
  42. </div>
  43. </div>
  44. <div class="collapse">
  45. <input type="checkbox" id="collapse-section31" aria-hidden="true"> <label for="collapse-section31" aria-hidden="true">V2.6.9 / 22-September-2022</label>
  46. <div>
  47. <h2 id="main-changes-1">Main Changes</h2>
  48. <ul>
  49. <li>Added new atomic register access macros in stm32f4xx.h file.</li>
  50. <li>Update FLASH_SCALE2_LATENCY4_FREQ value to 120MHz instead of 12MHz.</li>
  51. <li>Update the GCC startup file to be aligned to IAR/Keil IDE.</li>
  52. <li>STM32F410/412/413/423:
  53. <ul>
  54. <li>Fix wrong defined value for wake-up pin 3 (PWR_CSR_EWUP3).</li>
  55. </ul></li>
  56. </ul>
  57. </div>
  58. </div>
  59. <div class="collapse">
  60. <input type="checkbox" id="collapse-section30" aria-hidden="true"> <label for="collapse-section30" aria-hidden="true">V2.6.8 / 11-Fabruary-2022</label>
  61. <div>
  62. <h2 id="main-changes-2">Main Changes</h2>
  63. <ul>
  64. <li>All source files: update disclaimer to add reference to the new license agreement.</li>
  65. <li>Correct ETH bits definitions to be in line with naming used in the STM32F4 reference manual documents.</li>
  66. </ul>
  67. </div>
  68. </div>
  69. <div class="collapse">
  70. <input type="checkbox" id="collapse-section29" aria-hidden="true"> <label for="collapse-section29" aria-hidden="true">V2.6.7 / 16-July-2021</label>
  71. <div>
  72. <h2 id="main-changes-3">Main Changes</h2>
  73. <ul>
  74. <li>Add missing definition FLASH_CR_ERRIE to the CMSIS header file.</li>
  75. <li>Remove unsupported “GPIOF_BASE” and “GPIOG_BASE” defines from STM32F412Vx device.</li>
  76. <li>Add new atomic register access macros in stm32f4xx.h file.</li>
  77. <li>Add LSI maximum startup time datasheet value: LSI_STARTUP_TIME.</li>
  78. <li>Fix a typo in CMSIS STM32F4xx version macro (__STM32F4xx_CMSIS_VERSION).</li>
  79. </ul>
  80. </div>
  81. </div>
  82. <div class="collapse">
  83. <input type="checkbox" id="collapse-section28" aria-hidden="true"> <label for="collapse-section28" aria-hidden="true">V2.6.6 / 12-Fabruary-2021</label>
  84. <div>
  85. <h2 id="main-changes-4">Main Changes</h2>
  86. <ul>
  87. <li>system_stm32f4xx.c:
  88. <ul>
  89. <li>Protect Vector table modification following SRAM or FLASH preprocessor directive by a generic preprocessor directive : USER_VECT_TAB_ADDRESS</li>
  90. <li>Update SystemInit_ExtMemCtl() API to initialize the tmpreg variable before each time out loop condition.</li>
  91. </ul></li>
  92. <li>Add License.md and Readme.md files required for GitHub publication</li>
  93. <li>Improve GCC startup files robustness.</li>
  94. <li>Fix wrong value for GPIO_MODER_MODE8_Msk and GPIO_MODER_MODE2_Pos.</li>
  95. <li>Update max number of host channels in FS for STM32F446:
  96. <ul>
  97. <li>Update USB_OTG_FS_HOST_MAX_CHANNEL_NBR value from 8 to 12.</li>
  98. </ul></li>
  99. <li>Add SMBDEN and SMBHEN bit definition for STM32F410Tx device.</li>
  100. </ul>
  101. </div>
  102. </div>
  103. <div class="collapse">
  104. <input type="checkbox" id="collapse-section27" aria-hidden="true"> <label for="collapse-section27" aria-hidden="true">V2.6.5 / 10-Fabruary-2020</label>
  105. <div>
  106. <h2 id="main-changes-5">Main Changes</h2>
  107. <ul>
  108. <li>All header files
  109. <ul>
  110. <li>Update to use new BSD License format</li>
  111. </ul></li>
  112. <li>MDK-ARM startup files
  113. <ul>
  114. <li>Update to fix invalid config wizard annotations</li>
  115. </ul></li>
  116. </ul>
  117. </div>
  118. </div>
  119. <div class="collapse">
  120. <input type="checkbox" id="collapse-section26" aria-hidden="true"> <label for="collapse-section26" aria-hidden="true">V2.6.4 / 06-December-2019</label>
  121. <div>
  122. <h2 id="main-changes-6">Main Changes</h2>
  123. <ul>
  124. <li>stm32f446xx.h file
  125. <ul>
  126. <li>Update to support HW flow control on UART4 and UART5 instances</li>
  127. </ul></li>
  128. <li>stm32f412xx.h, stm32f413xx.h and stm32f423xx.h files
  129. <ul>
  130. <li>Remove unused IS_USB_ALL_INSTANCE() assert macro</li>
  131. </ul></li>
  132. <li>All header files
  133. <ul>
  134. <li>Remove unused IS_TIM_SYNCHRO_INSTANCE() assert macro</li>
  135. </ul></li>
  136. <li>system_stm32f4xx.c file
  137. <ul>
  138. <li>Update SystemInit() API to don’t reset RCC registers to its reset values</li>
  139. </ul></li>
  140. </ul>
  141. </div>
  142. </div>
  143. <div class="collapse">
  144. <input type="checkbox" id="collapse-section25" aria-hidden="true"> <label for="collapse-section25" aria-hidden="true">V2.6.3 / 08-Fabruary-2019</label>
  145. <div>
  146. <h2 id="main-changes-7">Main Changes</h2>
  147. <ul>
  148. <li>CRYP:
  149. <ul>
  150. <li>Update CMSIS devices with correct CRYP data input register name: DIN instead of DR</li>
  151. <li>Add Bits definition for CRYP CR ALGOMODE AES GCM/CCM</li>
  152. </ul></li>
  153. <li>HASH:
  154. <ul>
  155. <li>Update HASH_DIGEST_TypeDef structure: resize the HR register</li>
  156. <li>Remove MDMAT Bits definition</li>
  157. </ul></li>
  158. <li>TIM:
  159. <ul>
  160. <li>Add requires TIM assert macros:</li>
  161. <li>IS_TIM_SYNCHRO_INSTANCE()</li>
  162. <li>IS_TIM_CLOCKSOURCE_TIX_INSTANCE()</li>
  163. <li>IS_TIM_CLOCKSOURCE_ITRX_INSTANCE()</li>
  164. </ul></li>
  165. <li>RCC
  166. <ul>
  167. <li>Add RCC_CSR_BORRSTF bits definition</li>
  168. </ul></li>
  169. <li>GPIO
  170. <ul>
  171. <li>Fix GPIO BRR bits definition</li>
  172. <li>Adjust the GPIO present on STM32F412 devices</li>
  173. </ul></li>
  174. <li>SAI
  175. <ul>
  176. <li>Fix frame length in SAI_xFRCR_FSALL &amp; SAI_xFRCR_FRL bits description</li>
  177. </ul></li>
  178. <li>USB:
  179. <ul>
  180. <li>Add missing Bits Definitions in USB_OTG_DOEPMSK register</li>
  181. <li>USB_OTG_DOEPMSK_AHBERRM</li>
  182. <li>USB_OTG_DOEPMSK_OTEPSPRM</li>
  183. <li>USB_OTG_DOEPMSK_BERRM</li>
  184. <li>USB_OTG_DOEPMSK_NAKM</li>
  185. <li>USB_OTG_DOEPMSK_NYETM</li>
  186. <li>Add missing Bits Definitions in USB_OTG_DIEPINT register</li>
  187. <li>USB_OTG_DIEPINT_INEPNM</li>
  188. <li>USB_OTG_DIEPINT_AHBERR</li>
  189. <li>USB_OTG_DOEPINT_OUTPKTERR</li>
  190. <li>USB_OTG_DOEPINT_NAK</li>
  191. <li>USB_OTG_DOEPINT_STPKTRX</li>
  192. <li>Add missing Bits Definitions in USB_OTG_DCFG register</li>
  193. <li>USB_OTG_DCFG_XCVRDLY</li>
  194. <li>USB_OTG_DCFG_ERRATIM</li>
  195. <li>Update USB OTG max number of endpoints (6 FS and 9 HS instead of 5 and 8)</li>
  196. </ul></li>
  197. <li>I2C/FMPI2C
  198. <ul>
  199. <li>Align Bit naming for FMPI2C_CR1 register: FMPI2C_CR1_DFN–&gt; FMPI2C_CR1_DNF</li>
  200. <li>Add IS_SMBUS_ALL_INSTANCE() define</li>
  201. </ul></li>
  202. <li>DFSDM
  203. <ul>
  204. <li>Align Bit naming for DFSDM_FLTICR register: DFSDM_FLTICR_CLRSCSDF–&gt; DFSDM_FLTICR_CLRSCDF</li>
  205. </ul></li>
  206. <li>PWR
  207. <ul>
  208. <li>Remove PWR_CSR_WUPP define: feature not available on STM32F469xx/479xx devices</li>
  209. </ul></li>
  210. </ul>
  211. </div>
  212. </div>
  213. <div class="collapse">
  214. <input type="checkbox" id="collapse-section24" aria-hidden="true"> <label for="collapse-section24" aria-hidden="true">V2.6.2 / 06-October-2017</label>
  215. <div>
  216. <h2 id="main-changes-8">Main Changes</h2>
  217. <ul>
  218. <li>Remove Date and Version from all header files</li>
  219. <li>USB_OTG register clean up: remove duplicated bits definitions</li>
  220. <li>stm32f401xc.h, stm32f401xe.h, stm32f411xe.h files
  221. <ul>
  222. <li>Remove BKPSRAM_BASE define: feature not available</li>
  223. </ul></li>
  224. <li>stm32f405xx.h, stm32f407xx.h files
  225. <ul>
  226. <li>Rename HASH_RNG_IRQn to RNG_IRQn: HASH instance not available</li>
  227. </ul></li>
  228. <li>stm32f410xx.h, stm32f412xx.h, stm32f413xx.h, stm32f423xx.h files
  229. <ul>
  230. <li>Add missing wake-up pins defines</li>
  231. </ul></li>
  232. <li>stm32f412cx.h files
  233. <ul>
  234. <li>Add support of USART3 instance</li>
  235. </ul></li>
  236. </ul>
  237. </div>
  238. </div>
  239. <div class="collapse">
  240. <input type="checkbox" id="collapse-section23" aria-hidden="true"> <label for="collapse-section23" aria-hidden="true">V2.6.1 / 14-Fabruary-2017</label>
  241. <div>
  242. <h2 id="main-changes-9">Main Changes</h2>
  243. <ul>
  244. <li>General updates in header files to support LL drivers
  245. <ul>
  246. <li>Align Bit naming for RCC_CSR register (ex: RCC_CSR_PADRSTF –&gt; RCC_CSR_PINRSTF)</li>
  247. <li>Add new defines for RCC features support:</li>
  248. <li>RCC PLLI2S and RCC PLLSAI support</li>
  249. <li>RCC PLLR I2S clock source and RCC PLLR system clock support</li>
  250. <li>RCC SAI1A PLL source and RCC SAI1B PLL source support</li>
  251. <li>RCC AHB2 support</li>
  252. <li>Add RCC_DCKCFGR_PLLI2SDIVQ_X and RCC_DCKCFGR_PLLSAIDIVQ_X bits definition</li>
  253. <li>Add new defines for RCC_PLLI2SCFGR_RST_VALUE, RCC_PLLSAICFGR_RST_VALUE and RCC_PLLCFGR_RST_VALUE</li>
  254. <li>Add new defines for RTC features support:</li>
  255. <li>RTC Tamper 2 support</li>
  256. <li>RTC AF2 mapping support</li>
  257. <li>Align Bit naming for RTC_CR and RTC_TAFCR registers (ex: RTC_CR_BCK –&gt; RTC_CR_BKP)</li>
  258. <li>Add new define to manage RTC backup register number: RTC_BKP_NUMBER</li>
  259. <li>Rename IS_UART_INSTANCE() macro to IS_UART_HALFDUPLEX_INSTANCE()</li>
  260. <li>Add new defines to check LIN instance: IS_UART_LIN_INSTANCE</li>
  261. <li>Remove USART6 instance from STM32F410Tx header file</li>
  262. <li>Rename IS_I2S_ALL_INSTANCE_EXT() macro to IS_I2S_EXT_ALL_INSTANCEE()</li>
  263. <li>Add IS_I2S_APB1_INSTANCE() macro to check if I2S instance mapping: API1 or APB2</li>
  264. <li>Remove SPI_I2S_SUPPORT define for SPI I2S features support: I2S feature is available on all STM32F4xx devices</li>
  265. <li>Add SPI_I2S_FULLDUPLEX_SUPPORT define for STM32F413xx/423xx devices</li>
  266. <li>Align SPI_I2SCFGR bit naming: SPI_I2SCFGR_ASTRTEN bit is missing for STM32F412xx devices</li>
  267. <li>Add new I2S_APB1_APB2_FEATURE define for STM32F4xx devices where I2S IP’s are splited between RCC APB1 and APB2 interfaces</li>
  268. <li>Add new FLASH_SR_RDERR define in FLASH_SR register</li>
  269. <li>Add FLASH_OTP_BASE and FLASH_OTP_END defnes to manage FLASH OPT area</li>
  270. <li>Add bit definitions for ETH_MACDBGR register</li>
  271. <li>Add new defines ADC1_COMMON_BASE and ADC123_COMMON_BASE to replace ADC_BASE define</li>
  272. <li>Add new defines ADC1_COMMON and ADC123_COMMON to replace ADC define</li>
  273. <li>Add new ADC macros: IS_ADC_COMMON_INSTANCE() and IS_ADC_MULTIMODE_MASTER_INSTANCE()</li>
  274. <li>Add new defines for ADC multi mode features support</li>
  275. <li>Add new ADC aliases ADC_CDR_RDATA_MST and ADC_CDR_RDATA_SLV for compatibilities with all STM32 Families</li>
  276. <li>Update TIM CNT and ARR register mask on 32-bits</li>
  277. <li>Add new TIM_OR_TI1_RMP define in TIM_OR register</li>
  278. <li>Add new TIM macros to check TIM feature instance support:</li>
  279. <li>IS_TIM_COUNTER_MODE_SELECT_INSTANCE()</li>
  280. <li>IS_TIM_CLOCK_DIVISION_INSTANCE()</li>
  281. <li>IS_TIM_COMMUTATION_EVENT_INSTANCE()</li>
  282. <li>IS_TIM_OCXREF_CLEAR_INSTANCE()</li>
  283. <li>IS_TIM_CLOCKSOURCE_ETRMODE1_INSTANCE()</li>
  284. <li>IS_TIM_CLOCKSOURCE_ETRMODE2_INSTANCE()</li>
  285. <li>IS_TIM_REPETITION_COUNTER_INSTANCE()</li>
  286. <li>IS_TIM_ENCODER_INTERFACE_INSTANCE()</li>
  287. <li>IS_TIM_HALL_SENSOR_INTERFACE_INSTANCE()</li>
  288. <li>IS_TIM_BREAK_INSTANCE()</li>
  289. </ul></li>
  290. <li>CAN_IER register clean up: remove duplicated bit definitions</li>
  291. <li>USB_OTG register: fix the wrong defined values for USB_OTG_GAHBCFG bits</li>
  292. </ul>
  293. </div>
  294. </div>
  295. <div class="collapse">
  296. <input type="checkbox" id="collapse-section22" aria-hidden="true"> <label for="collapse-section22" aria-hidden="true">V2.6.0 / 04-November-2016</label>
  297. <div>
  298. <h2 id="main-changes-10">Main Changes</h2>
  299. <ul>
  300. <li>Add support of STM32F413xx and STM32F423xx devices
  301. <ul>
  302. <li>Add “stm32f413xx.h” and “stm32f423xx.h” files</li>
  303. <li>Add startup files “startup_stm32f413xx.s” and “startup_stm32f423xx.s” for EWARM, MDK-ARM and SW4STM32 toolchains</li>
  304. <li>Add Linker files “stm32f413xx_flash.icf”, “stm32f413xx_sram.icf”, “stm32f423xx_flash.icf” and “stm32f423xx_sram.icf” used within EWARM Workspaces</li>
  305. </ul></li>
  306. <li>All header files
  307. <ul>
  308. <li>Use _Pos and _Mask macro for all Bit Definitions</li>
  309. <li>Update LPTIM_OR Bit Definition</li>
  310. <li>Update the defined frequencies by scale for USB exported constants</li>
  311. <li>Add UID_BASE, FLASHSIZE_BASE and PACKAGE_BASE defines</li>
  312. <li>Add new define DAC_CHANNEL2_SUPPORT to manage DAC channel2 support</li>
  313. <li>Use new DAC1 naming</li>
  314. <li>Rename PWR_CSR_UDSWRDY define to PWR_CSR_UDRDY in PWR_CSR register</li>
  315. <li>Align Bit naming for EXTI_IMR and EXTI_EMR registers (ex: EXTI_IMR_MR0 –&gt; EXTI_IMR_IM0)</li>
  316. <li>Add new EXTI_IMR_IM define in EXTI_IMR register</li>
  317. <li>Add missing DMA registers definition</li>
  318. <li>Add macro to check SMBUS instance support</li>
  319. </ul></li>
  320. <li>stm32f412cx.h, stm32f412zx.h, stm32f412vx.h, stm32f412rx.h files
  321. <ul>
  322. <li>Add missing SYSCFG register: CFGR2</li>
  323. </ul></li>
  324. <li>stm32f405xx.h, stm32f407xx.h, stm32f427xx.h, stm32f429xx.h files
  325. <ul>
  326. <li>Remove HASH_RNG_IRQn in IRQn_Type enumeration</li>
  327. </ul></li>
  328. <li>stm32f405xx.h, stm32f407xx.h, stm32f415xx.h, stm32f417xx.h files
  329. <ul>
  330. <li>Remove I2C FLTR register as not supported</li>
  331. </ul></li>
  332. <li>stm32f407xx.h, stm32f417xx.h, stm32f427xx.h, stm32f429xx.h, stm32f437xx.h, stm32f439xx.h, stm32f469xx.h, stm32f479xx.h files
  333. <ul>
  334. <li>Add missing Bit Definition of ETH_MACDBGR register</li>
  335. </ul></li>
  336. <li>system_stm32f4xx.c file
  337. <ul>
  338. <li>Add APBPrescTable declaration</li>
  339. </ul></li>
  340. </ul>
  341. </div>
  342. </div>
  343. <div class="collapse">
  344. <input type="checkbox" id="collapse-section21" aria-hidden="true"> <label for="collapse-section21" aria-hidden="true">V2.5.1 / 28-June-2016</label>
  345. <div>
  346. <h2 id="main-changes-11">Main Changes</h2>
  347. <ul>
  348. <li>stm32f412rx.h, stm32f412vx.h and stm32f412zx.h files:
  349. <ul>
  350. <li>Add QSPI1_V2_1L define to manage the QSPI DMA2 limitation</li>
  351. </ul></li>
  352. </ul>
  353. </div>
  354. </div>
  355. <div class="collapse">
  356. <input type="checkbox" id="collapse-section20" aria-hidden="true"> <label for="collapse-section20" aria-hidden="true">V2.5.0 / 22-April-2016</label>
  357. <div>
  358. <h2 id="main-changes-12">Main Changes</h2>
  359. <ul>
  360. <li>Add support of STM32F412Cx, STM32F412Rx, STM32F412Vx and STM32F412Zx devices
  361. <ul>
  362. <li>Add “stm32f412Cx.h”, “stm32f412Rx.h”, “stm32f412Vx.h” and “stm32f412Zx.h” files</li>
  363. <li>Add startup files “startup_stm32f412cx.s”, “startup_stm32f412rx.s”, “startup_stm32f412vx.s” and “startup_stm32f412zx.s” for EWARM, MDK-ARM and SW4STM32 toolchains</li>
  364. <li>Add Linker files “stm32f412cx_flash.icf”, “stm32f412cx_sram.icf”, “stm32f412rx_flash.icf”, “stm32f412rx_sram.icf”, “stm32f412vx_flash.icf”, “stm32f412vx_sram.icf”, “stm32f412zx_flash.icf” and “stm32f412zx_sram.icf” used within EWARM Workspaces</li>
  365. </ul></li>
  366. <li>Header files for all STM32 devices
  367. <ul>
  368. <li>Remove uint32_t cast and keep only Misra Cast (U) to avoid two types cast duplication</li>
  369. <li>Correct some bits definition to be in line with naming used in the Reference Manual</li>
  370. <li>WWDG_CR_Tx changed to WWDG_CR_T_x</li>
  371. <li>WWDG_CFR_Wx changed to WWDG_CFR_W_x</li>
  372. <li>WWDG_CFR_WDGTBx changed to WWDG_CFR_WDGTB_x</li>
  373. </ul></li>
  374. <li>stm32f407xx.h, stm32f417xx.h, stm32f427xx.h, stm32f429xx.h, stm32f437xx.h, stm32f439xx.h, stm32f446xx.h, stm32f469xx.h, stm32f479xx.h files
  375. <ul>
  376. <li>Correct some bits definition to be in line with naming used in the Reference Manual</li>
  377. <li>DCMI_RISR_x changed to DCMI_RIS_x</li>
  378. <li>DCMI_RISR_OVF_RIS changed to DCMI_RIS_OVR_RIS</li>
  379. <li>DCMI_IER_OVF_IE changed to DCMI_IER_OVR_IE</li>
  380. </ul></li>
  381. <li>stm32f427xx.h, stm32f429xx.h, stm32f437xx.h, stm32f439xx.h, stm32f469xx.h, stm32f479xx.h, stm32f446xx.h files
  382. <ul>
  383. <li>Correct some bits definition to be in line with naming used in the Reference Manual</li>
  384. <li>SAI_xFRCR_FSPO changed to SAI_xFRCR_FSPOL</li>
  385. <li>Rename IS_SAI_BLOCK_PERIPH to IS_SAI_ALL_INSTANCE</li>
  386. </ul></li>
  387. <li>stm32f410cx.h, stm32f410rx.h, stm32f410tx.h files and stm32f446xx.h
  388. <ul>
  389. <li>Remove FMPI2C_CR1_SWRST and FMPI2C_CR1_WUPEN Bit definition for I2C_CR1 register</li>
  390. </ul></li>
  391. <li>stm32f407xx.h, stm32f417xx.h, stm32f427xx.h, stm32f437xx.h, stm32f439xx.h, stm32f469xx.h, stm32f479xx.h files
  392. <ul>
  393. <li>Add missing bits definitions for DMA2D_CR, DMA2D_FGPFCCR, DMA2D_BGPFCCR, DMA2D_OPFCCR registers</li>
  394. </ul></li>
  395. <li>stm32f401xc.h, stm32f401xe.h, stm32f411xe.h files
  396. <ul>
  397. <li>Add missing RCC_DCKCFGR register in RCC_TypeDef structure</li>
  398. <li>Add missing Bit definition for RCC_DCKCFGR register</li>
  399. </ul></li>
  400. <li>system_stm32f4xx.c
  401. <ul>
  402. <li>Update SystemInit_ExtMemCtl() API to fix delay optimization problem with GCC compiler: index variable is declared as volatile</li>
  403. </ul></li>
  404. <li>stm32f4xx.h
  405. <ul>
  406. <li>Rename __STM32F4xx_CMSIS_DEVICE_VERSION_xx defines to __STM32F4_CMSIS_VERSION_xx (MISRA-C 2004 rule 5.1)</li>
  407. </ul></li>
  408. </ul>
  409. </div>
  410. </div>
  411. <div class="collapse">
  412. <input type="checkbox" id="collapse-section19" aria-hidden="true"> <label for="collapse-section19" aria-hidden="true">V2.4.3 / 29-January-2016</label>
  413. <div>
  414. <h2 id="main-changes-13">Main Changes</h2>
  415. <ul>
  416. <li>Header file for all STM32 devices
  417. <ul>
  418. <li>Rename ADC overrun flags definitions : ADC_CSR_DOVR1, ADC_CSR_DOVR2 and ADC_CSR_DOVR3 are replaced respectively by ADC_CSR_OVR1, ADC_CSR_OVR2 and ADC_CSR_OVR3 to be aligned with reference manuals</li>
  419. <li>Add missing bits definitions for DAC : DAC_CR_DMAUDRIE1 and DAC_CR_DMAUDRIE2</li>
  420. <li>Update CMSIS driver to be compliant with MISRA C 2004 rule 10.6</li>
  421. <li>Remove the double definition of USB_OTG_HS_MAX_IN_ENDPOINTS and add a new one for USB_OTG_HS_MAX_OUT_ENDPOINTS</li>
  422. </ul></li>
  423. <li>stm32f446xx.h, stm32f469xx.h, stm32f479xx.h files
  424. <ul>
  425. <li>Change the bit definition value of QUADSPI_CR_FTHRES</li>
  426. </ul></li>
  427. <li>stm32f446xx.h, stm32f469xx.h, stm32f479xx.h, stm32f429xx.h, stm32f439xx.h files
  428. <ul>
  429. <li>Rename the LTDC_GCR_DTEN to LTDC_GCR_DEN in order to be aligned with the reference manual</li>
  430. <li>Rename DCMI_MISR bit definitions to DCMI_MIS</li>
  431. <li>Rename DCMI_ICR_OVF_ISC to DCMI_ICR_OVR_ISC</li>
  432. <li>Add missing bits definitions for DCMI_ESCR, DCMI_ESUR, DCMI_CWSTRT, DCMI_CWSIZE, DCMI_DR registers</li>
  433. </ul></li>
  434. <li>stm32f407xx.h, stm32f417xx.h, stm32f427xx.h, stm32f437xx.h files
  435. <ul>
  436. <li>Rename DCMI_MISR bit definitions to DCMI_MIS</li>
  437. <li>Rename DCMI_ICR_OVF_ISC to DCMI_ICR_OVR_ISC</li>
  438. <li>Add missing bits definitions for DCMI_ESCR, DCMI_ESUR, DCMI_CWSTRT, DCMI_CWSIZE, DCMI_DR registers</li>
  439. </ul></li>
  440. <li>stm32f410cx.h, stm32f410rx.h, stm32f410tx.h files
  441. <ul>
  442. <li>Update the LPTIM SNGSTRT defined value</li>
  443. </ul></li>
  444. <li>stm32f427xx.h, stm32f429xx.h, stm32f437xx.h, stm32f439xx.h, stm32f469xx.h, stm32f479xx.h files
  445. <ul>
  446. <li>Rename the DMA2D_IFSR bit definitions to DMA2D_IFCR</li>
  447. </ul></li>
  448. <li>stm32f427xx.h, stm32f429xx.h, stm32f437xx.h, stm32f439xx.h, stm32f469xx.h, stm32f479xx.h, stm32f446xx.h files
  449. <ul>
  450. <li>Correct a wrong value of SAI_xCR2_CPL definition bit</li>
  451. </ul></li>
  452. </ul>
  453. </div>
  454. </div>
  455. <div class="collapse">
  456. <input type="checkbox" id="collapse-section18" aria-hidden="true"> <label for="collapse-section18" aria-hidden="true">V2.4.2 / 13-November-2015</label>
  457. <div>
  458. <h2 id="main-changes-14">Main Changes</h2>
  459. <ul>
  460. <li>system_stm32f4xx.c file
  461. <ul>
  462. <li>update SystemInit_ExtMemCtl() function implementation to allow the possibility of simultaneous use of DATA_IN_ExtSRAM and DATA_IN_ExtSDRAM</li>
  463. </ul></li>
  464. <li>stm32f4xx.h file
  465. <ul>
  466. <li>add symbols for STM32F411xC devices</li>
  467. </ul></li>
  468. <li>stm32f405xx.h, stm32f407xx.h, stm32f415xx.h, stm32f417xx.h files
  469. <ul>
  470. <li>add FSMC_BCRx_CPSIZE bits definitions</li>
  471. <li>remove FSMC_BWTRx_CLKDIV and FSMC_BWTRx_DATLAT bits definitions</li>
  472. </ul></li>
  473. <li>stm32f429xx.h, stm32f427xx.h, stm32f437xx.h files
  474. <ul>
  475. <li>add FMC_BCRx_CPSIZE bits definitions</li>
  476. <li>remove FMC_BWTRx_CLKDIV and FMC_BWTRx_DATLAT bits definitions</li>
  477. </ul></li>
  478. <li>stm32f446xx.h, stm32f469xx.h and stm32f479xx.h
  479. <ul>
  480. <li>update USB_OTG_GlobalTypeDef registers structure to remove ADP control registers</li>
  481. <li>add USB_OTG_DOEPMSK_OTEPSPRM and USB_OTG_DOEPINT_OTEPSPR bits definitions</li>
  482. <li>Remove ADP related bits definitions</li>
  483. <li>add IS_PCD_ALL_INSTANCE() and IS_HCD_ALL_INSTANCE() macros</li>
  484. </ul></li>
  485. </ul>
  486. </div>
  487. </div>
  488. <div class="collapse">
  489. <input type="checkbox" id="collapse-section17" aria-hidden="true"> <label for="collapse-section17" aria-hidden="true">V2.4.1 / 09-October-2015</label>
  490. <div>
  491. <h2 id="main-changes-15">Main Changes</h2>
  492. <ul>
  493. <li>“stm32f469xx.h”, “stm32f479xx.h”
  494. <ul>
  495. <li>Update bits definition for DSI_WPCR and DSI_TCCR registers</li>
  496. </ul></li>
  497. </ul>
  498. </div>
  499. </div>
  500. <div class="collapse">
  501. <input type="checkbox" id="collapse-section16" aria-hidden="true"> <label for="collapse-section16" aria-hidden="true">V2.4.0 / 14-August-2015</label>
  502. <div>
  503. <h2 id="main-changes-16">Main Changes</h2>
  504. <ul>
  505. <li>Add support of STM32F469xx and STM32F479xx devices
  506. <ul>
  507. <li>Add “stm32f469xx.h” and “stm32f479xx.h” files</li>
  508. <li>Add startup files “startup_stm32f469xx.s” and “startup_stm32f479xx.s” for EWARM, MDK-ARM and SW4STM32 toolchains</li>
  509. <li>Add Linker files “stm32f469xx_flash.icf”, “stm32f469xx_sram.icf”, “stm32f479xx_flash.icf” and “stm32f479xx_sram.icf” used within EWARM Workspaces</li>
  510. </ul></li>
  511. <li>Add support of STM32F410xx devices
  512. <ul>
  513. <li>Add “stm32f410cx.h”, “stm32f410tx.h” and “stm32f410rx.h” files</li>
  514. <li>Add startup files “startup_stm32f410cx.s”, “startup_stm32f410rx.s” and “startup_stm32f410tx.s” for EWARM, MDK-ARM and SW4STM32 toolchains</li>
  515. <li>Add Linker files “stm32f410cx_flash.icf”, “stm32f410cx_sram.icf”, “stm32f410rx_flash.icf”, “stm32f410tx_sram.icf”, “stm32f410tx_flash.icf”, and “stm32f410rx_sram.icf” used within EWARM Workspaces</li>
  516. </ul></li>
  517. </ul>
  518. </div>
  519. </div>
  520. <div class="collapse">
  521. <input type="checkbox" id="collapse-section15" aria-hidden="true"> <label for="collapse-section15" aria-hidden="true">V2.3.2 / 26-June-2015</label>
  522. <div>
  523. <h2 id="main-changes-17">Main Changes</h2>
  524. <ul>
  525. <li>“stm32f405xx.h”, “stm32f407xx.h”, “stm32f415xx.h” and “stm32f417xx.h”
  526. <ul>
  527. <li>Update FSMC_BTRx_DATAST and FSMC_BWTRx_DATAST (where x can be 1, 2, 3 and 4) mask on 8bits instead of 4bits</li>
  528. </ul></li>
  529. <li>“stm32f427xx.h”, “stm32f437xx.h”, “stm32f429xx.h” and “stm32f439xx.h”
  530. <ul>
  531. <li>Update the defined mask value for SAI_xSR_FLVL_2</li>
  532. </ul></li>
  533. <li>“stm32f415xx.h”, “stm32f417xx.h”, “stm32f437xx.h” and “stm32f439xx.h”
  534. <ul>
  535. <li>HASH alignement with bits namming used in documentation</li>
  536. <li>Rename HASH_IMR_DINIM to HASH_IMR_DINIE</li>
  537. <li>Rename HASH_IMR_DCIM to HASH_IMR_DCIE</li>
  538. <li>Rename HASH_STR_NBW to HASH_STR_NBW</li>
  539. </ul></li>
  540. <li>system_stm32f4xx.c
  541. <ul>
  542. <li>Remove __IO on constant table declaration</li>
  543. <li>Implement workaround to cover RCC limitation regarding peripheral enable delay</li>
  544. <li>SystemInit_ExtMemCtl() update GPIO configuration when external SDRAM is used</li>
  545. </ul></li>
  546. </ul>
  547. </div>
  548. </div>
  549. <div class="collapse">
  550. <input type="checkbox" id="collapse-section14" aria-hidden="true"> <label for="collapse-section14" aria-hidden="true">V2.3.1 / 03-April-2015</label>
  551. <div>
  552. <h2 id="main-changes-18">Main Changes</h2>
  553. <ul>
  554. <li>Header file for all STM32 devices
  555. <ul>
  556. <li>Update SRAM2, SRAM3 and BKPSRAM Bit-Banding base address defined values</li>
  557. <li>Keep reference to SRAM3 only for STM32F42xx and STM32F43xx devices</li>
  558. <li>Remove CCMDATARAM_BB_BASE: the CCM Data RAM region is not accessible via Bit-Banding</li>
  559. <li>Update the RTC_PRER_PREDIV_S defined value to 0x00007FFF instead of 0x00001FFF</li>
  560. </ul></li>
  561. </ul>
  562. </div>
  563. </div>
  564. <div class="collapse">
  565. <input type="checkbox" id="collapse-section13" aria-hidden="true"> <label for="collapse-section13" aria-hidden="true">V2.3.0 / 02-March-2015</label>
  566. <div>
  567. <h2 id="main-changes-19">Main Changes</h2>
  568. <ul>
  569. <li>Add support of STM32F446xx devices
  570. <ul>
  571. <li>Add “stm32f446xx.h” file</li>
  572. <li>Add startup file “startup_stm32f446xx.s” for EWARM, MDK-ARM and TrueSTUDIO toolchains</li>
  573. <li>Add Linker files “stm32f446xx_flash.icf” and “stm32f446xx_sram.icf” used within EWARM Workspaces</li>
  574. </ul></li>
  575. <li>Header file for all STM32 devices
  576. <ul>
  577. <li>Add missing bits definition in the EXTI IMR, EMR, RTSR, FTSR, SWIER and PR registers</li>
  578. <li>Update RCC_AHB1RSTR_OTGHRST bit definition</li>
  579. <li>Update PWR_CR_VOS bits definition for STM32F40xx and STM32F41xx devices</li>
  580. <li>update SAI_xCR1_MCKDIV bit definition</li>
  581. </ul></li>
  582. </ul>
  583. </div>
  584. </div>
  585. <div class="collapse">
  586. <input type="checkbox" id="collapse-section12" aria-hidden="true"> <label for="collapse-section12" aria-hidden="true">V2.2.0 / 15-December-2014</label>
  587. <div>
  588. <h2 id="main-changes-20">Main Changes</h2>
  589. <ul>
  590. <li>stm32f4xx.h
  591. <ul>
  592. <li>Add new constant definition STM32F4</li>
  593. </ul></li>
  594. <li>system_stm32f4xx.c
  595. <ul>
  596. <li>Fix SDRAM configuration in SystemInit_ExtMemCtl(): change RowBitsNumber from 11 to 12 (for MT48LC4M32B2 available on STM324x9I_EVAL board)</li>
  597. </ul></li>
  598. <li>Header file for all STM32 devices
  599. <ul>
  600. <li>Add missing bits definition for CAN, FMC and USB peripherals</li>
  601. <li>GPIO_TypeDef: change the BSRR register definition, the two 16-bits definition BSRRH and BSRRL are merged in a single 32-bits definition BSRR</li>
  602. </ul></li>
  603. </ul>
  604. </div>
  605. </div>
  606. <div class="collapse">
  607. <input type="checkbox" id="collapse-section11" aria-hidden="true"> <label for="collapse-section11" aria-hidden="true">V2.1.0 / 19-June-2014</label>
  608. <div>
  609. <h2 id="main-changes-21">Main Changes</h2>
  610. <ul>
  611. <li>Add support of STM32F411xExx devices
  612. <ul>
  613. <li>Add “stm32f411xe.h” file</li>
  614. <li>Add startup file “startup_stm32f411xx.s” for EWARM, MDK-ARM and TrueSTUDIO toolchains</li>
  615. </ul></li>
  616. <li>All header files
  617. <ul>
  618. <li>Add missing defines for GPIO LCKR Register</li>
  619. <li>Add defines for memories base and end addresses: FLASH, SRAM, BKPSRAM and CCMRAM.</li>
  620. <li>Add the following aliases for IRQ number and handler definition to ensure compatibility across the product lines of STM32F4 Series;
  621. <ul>
  622. <li><p>example for STM32F405xx.h</p>
  623. <p>#define FMC_IRQn FSMC_IRQn #define FMC_IRQHandler FSMC_IRQHandler</p></li>
  624. <li><p>and for STM32F427xx.h</p>
  625. <p>#define FSMC_IRQn FMC_IRQn #define FSMC_IRQHandler FMC_IRQHandler</p></li>
  626. </ul></li>
  627. </ul></li>
  628. <li>“stm32f401xc.h” and “stm32f401xe.h”: update to be in line with latest version of the Reference manual
  629. <ul>
  630. <li>Remove RNG registers structures and the corresponding bit definitions</li>
  631. <li>Remove any occurrence to RNG (clock enable, clock reset,…)</li>
  632. <li>Add the following bit definition for PWR CR registerAdd the following bit definition for PWR CR register
  633. <ul>
  634. <li>#define PWR_CR_ADCDC1 ((uint32_t)0x00002000)</li>
  635. <li>#define PWR_CR_LPLVDS ((uint32_t)0x00000400)</li>
  636. <li>#define PWR_CR_MRLVDS ((uint32_t)0x00000800)</li>
  637. </ul></li>
  638. </ul></li>
  639. <li>“stm32f427xx.h”, “stm32f437xx.h”, “stm32f429xx.h” and “stm32f439xx.h”
  640. <ul>
  641. <li>Add a new legacy bit definition for PWR to be in line with latest version of the Reference manual
  642. <ul>
  643. <li>#define PWR_CR_LPUDS PWR_CR_LPLVDS</li>
  644. <li>#define PWR_CR_MRUDS PWR_CR_MRLVDS</li>
  645. </ul></li>
  646. </ul></li>
  647. <li>Update startup files for EWARM toolchain to cope with compiler enhancement of the V7.10 version</li>
  648. <li>system_stm32f4xx.c
  649. <ul>
  650. <li>Remove dependency vs. the HAL, to allow using this file without the need to have the HAL drivers
  651. <ul>
  652. <li>Include stm32f4xx.h instead of stm32f4xx_hal.h</li>
  653. <li>Add definition of HSE_VALUE and HSI_VALUE, if they are not yet defined in the compilation scope (these values are defined in stm32f4xx_hal_conf).</li>
  654. </ul></li>
  655. <li>Use “__IO const” instead of “__I”, to avoid any compilation issue when __cplusplus switch is defined</li>
  656. </ul></li>
  657. </ul>
  658. </div>
  659. </div>
  660. <div class="collapse">
  661. <input type="checkbox" id="collapse-section10" aria-hidden="true"> <label for="collapse-section10" aria-hidden="true">V2.0.0 / 18-Fabruary-2014</label>
  662. <div>
  663. <h2 id="main-changes-22">Main Changes</h2>
  664. <ul>
  665. <li>Update based on STM32Cube specification</li>
  666. <li>This version and later has to be used only with STM32CubeF4 based development</li>
  667. </ul>
  668. </div>
  669. </div>
  670. <div class="collapse">
  671. <input type="checkbox" id="collapse-section9" aria-hidden="true"> <label for="collapse-section9" aria-hidden="true">V1.3.0 / 08-November-2013</label>
  672. <div>
  673. <h2 id="main-changes-23">Main Changes</h2>
  674. <ul>
  675. <li>Add support of STM32F401xExx devices</li>
  676. <li>Update startup files “startup_stm32f401xx.s” for EWARM, MDK-ARM, TrueSTUDIO and Ride toolchains: Add SPI4 interrupt handler entry in the vector table</li>
  677. </ul>
  678. </div>
  679. </div>
  680. <div class="collapse">
  681. <input type="checkbox" id="collapse-section8" aria-hidden="true"> <label for="collapse-section8" aria-hidden="true">V1.2.1 / 19-September-2013</label>
  682. <div>
  683. <h2 id="main-changes-24">Main Changes</h2>
  684. <ul>
  685. <li>system_stm32f4xx.c : Update FMC SDRAM configuration (RBURST mode activation)</li>
  686. <li>Update startup files “startup_stm32f427_437xx.s” and “startup_stm32f429_439xx.s” for TrueSTUDIO and Ride toolchains and maintain the old name of startup files for legacy purpose</li>
  687. </ul>
  688. </div>
  689. </div>
  690. <div class="collapse">
  691. <input type="checkbox" id="collapse-section7" aria-hidden="true"> <label for="collapse-section7" aria-hidden="true">V1.2.0 / 11-September-2013</label>
  692. <div>
  693. <h2 id="main-changes-25">Main Changes</h2>
  694. <ul>
  695. <li>Add support of STM32F429/439xx and STM32F401xCxx devices</li>
  696. <li>Update definition of STM32F427/437xx devices : extension of the features to include system clock up to 180MHz, dual bank Flash, reduced STOP Mode current, SAI, PCROP, SDRAM and DMA2D</li>
  697. <li>stm32f4xx.h
  698. <ul>
  699. <li>Add the following device defines :
  700. <ul>
  701. <li>“#define STM32F40_41xxx” for all STM32405/415/407/417xx devices</li>
  702. <li>“#define STM32F427_437xx” for all STM32F427/437xx devices</li>
  703. <li>“#define STM32F429_439xx” for all STM32F429/439xx devices</li>
  704. <li>“#define STM32F401xx” for all STM32F401xx devices</li>
  705. </ul></li>
  706. <li>Maintain the old device define for legacy purpose</li>
  707. <li>Update IRQ handler enumeration structure to support all STM32F4xx Family devices.</li>
  708. </ul></li>
  709. <li>Add new startup files “startup_stm32f40_41xxx.s”,“startup_stm32f427_437xx.s”, “startup_stm32f429_439xx.s” and “startup_stm32f401xx.s” for all toolchains and maintain the old name for startup files for legacy purpose</li>
  710. <li>system_stm32f4xx.c
  711. <ul>
  712. <li>Update the system configuration to support all STM32F4xx Family devices.</li>
  713. </ul></li>
  714. </ul>
  715. </div>
  716. </div>
  717. <div class="collapse">
  718. <input type="checkbox" id="collapse-section6" aria-hidden="true"> <label for="collapse-section6" aria-hidden="true">V1.1.0 / 11-January-2013</label>
  719. <div>
  720. <h2 id="main-changes-26">Main Changes</h2>
  721. <ul>
  722. <li>Official release for STM32F427x/437x devices.</li>
  723. <li>stm32f4xx.h
  724. <ul>
  725. <li>Update product define: replace “#define STM32F4XX” by “#define STM32F40XX” for STM32F40x/41x devices</li>
  726. <li>Add new product define: “#define STM32F427X” for STM32F427x/437x devices.</li>
  727. </ul></li>
  728. <li>Add new startup files “startup_stm32f427x.s” for all toolchains</li>
  729. <li>rename startup files “startup_stm32f4xx.s” by “startup_stm32f40xx.s” for all toolchains</li>
  730. <li>system_stm32f4xx.c
  731. <ul>
  732. <li>Prefetch Buffer enabled</li>
  733. <li>Add reference to STM32F427x/437x devices and STM324x7I_EVAL board</li>
  734. <li>SystemInit_ExtMemCtl() function
  735. <ul>
  736. <li>Add configuration of missing FSMC address and data lines</li>
  737. <li>Change memory type to SRAM instead of PSRAM (PSRAM is available only on STM324xG-EVAL RevA) and update timing values</li>
  738. </ul></li>
  739. </ul></li>
  740. </ul>
  741. </div>
  742. </div>
  743. <div class="collapse">
  744. <input type="checkbox" id="collapse-section5" aria-hidden="true"> <label for="collapse-section5" aria-hidden="true">V1.0.2 / 05-March-2012</label>
  745. <div>
  746. <h2 id="main-changes-27">Main Changes</h2>
  747. <ul>
  748. <li>All source files: license disclaimer text update and add link to the License file on ST Internet.</li>
  749. </ul>
  750. </div>
  751. </div>
  752. <div class="collapse">
  753. <input type="checkbox" id="collapse-section4" aria-hidden="true"> <label for="collapse-section4" aria-hidden="true">V1.0.1 / 28-December-2011</label>
  754. <div>
  755. <h2 id="main-changes-28">Main Changes</h2>
  756. <ul>
  757. <li>All source files: update disclaimer to add reference to the new license agreement</li>
  758. <li>stm32f4xx.h
  759. <ul>
  760. <li>Correct bit definition: RCC_AHB2RSTR_HSAHRST changed to RCC_AHB2RSTR_HASHRST</li>
  761. </ul></li>
  762. </ul>
  763. </div>
  764. </div>
  765. <div class="collapse">
  766. <input type="checkbox" id="collapse-section3" aria-hidden="true"> <label for="collapse-section3" aria-hidden="true">V1.0.0 / 30-September-2011</label>
  767. <div>
  768. <h2 id="main-changes-29">Main Changes</h2>
  769. <ul>
  770. <li>First official release for STM32F40x/41x devices</li>
  771. <li>Add startup file for TASKING toolchain</li>
  772. <li>system_stm32f4xx.c: driver’s comments update</li>
  773. </ul>
  774. </div>
  775. </div>
  776. <div class="collapse">
  777. <input type="checkbox" id="collapse-section2" aria-hidden="true"> <label for="collapse-section2" aria-hidden="true">V1.0.0RC2 / 26-September-2011</label>
  778. <div>
  779. <h2 id="main-changes-30">Main Changes</h2>
  780. <ul>
  781. <li>Official version (V1.0.0) Release Candidate2 for STM32F40x/41x devices</li>
  782. <li>stm32f4xx.h
  783. <ul>
  784. <li>Add define for Cortex-M4 revision __CM4_REV</li>
  785. <li>Correct RCC_CFGR_PPRE2_DIV16 bit (in RCC_CFGR register) value to 0x0000E000</li>
  786. <li>Correct some bits definition to be in line with naming used in the Reference Manual (RM0090)
  787. <ul>
  788. <li>GPIO_OTYPER_IDR_x changed to GPIO_IDR_IDR_x</li>
  789. <li>GPIO_OTYPER_ODR_x changed to GPIO_ODR_ODR_x</li>
  790. <li>SYSCFG_PMC_MII_RMII changed to SYSCFG_PMC_MII_RMII_SEL</li>
  791. <li>RCC_APB2RSTR_SPI1 changed to RCC_APB2RSTR_SPI1RST</li>
  792. <li>DBGMCU_APB1_FZ_DBG_IWDEG_STOP changed to DBGMCU_APB1_FZ_DBG_IWDG_STOP</li>
  793. <li>PWR_CR_PMODE changed to PWR_CR_VOS</li>
  794. <li>PWR_CSR_REGRDY changed to PWR_CSR_VOSRDY</li>
  795. <li>Add new define RCC_AHB1ENR_CCMDATARAMEN</li>
  796. <li>Add new defines SRAM2_BASE, CCMDATARAM_BASE and BKPSRAM_BASE</li>
  797. </ul></li>
  798. <li>GPIO_TypeDef structure: in the comment change AFR[2] address mapping to 0x20-0x24 instead of 0x24-0x28</li>
  799. </ul></li>
  800. <li>system_stm32f4xx.c
  801. <ul>
  802. <li>SystemInit(): add code to enable the FPU</li>
  803. <li>SetSysClock(): change PWR_CR_PMODE by PWR_CR_VOS</li>
  804. <li>SystemInit_ExtMemCtl(): remove commented values</li>
  805. </ul></li>
  806. <li>startup (for all compilers)
  807. <ul>
  808. <li>Delete code used to enable the FPU (moved to system_stm32f4xx.c file)</li>
  809. <li>File’s header updated</li>
  810. </ul></li>
  811. </ul>
  812. </div>
  813. </div>
  814. <div class="collapse">
  815. <input type="checkbox" id="collapse-section1" aria-hidden="true"> <label for="collapse-section1" aria-hidden="true">V1.0.0RC1 / 25-August-2011</label>
  816. <div>
  817. <h2 id="main-changes-31">Main Changes</h2>
  818. <ul>
  819. <li>Official version (V1.0.0) Release Candidate1 for STM32F4xx devices</li>
  820. </ul>
  821. </div>
  822. </div>
  823. </div>
  824. </div>
  825. <footer class="sticky">
  826. For complete documentation on <mark>STM32 Microcontrollers</mark> , visit: <a href="http://www.st.com/STM32">http://www.st.com/STM32</a>
  827. </footer>
  828. </body>
  829. </html>