John Karatka / mbed

Fork of mbed-dev by mbed official

Committer:
AnnaBridge
Date:
Fri Feb 16 16:09:33 2018 +0000
Revision:
182:57724642e740
Parent:
167:e84263d55307
mbed-dev library. Release version 159.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
<> 144:ef7eb2e8f9f7 1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<> 144:ef7eb2e8f9f7 2 <html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"><head>
<> 144:ef7eb2e8f9f7 3
<> 144:ef7eb2e8f9f7 4
<> 144:ef7eb2e8f9f7 5 <meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<> 144:ef7eb2e8f9f7 6 <link rel="File-List" href="Release_Notes_for_STM32F45x_StdPeriph_Driver_files/filelist.xml">
<> 144:ef7eb2e8f9f7 7 <link rel="Edit-Time-Data" href="Release_Notes_for_STM32F45x_StdPeriph_Driver_files/editdata.mso"><!--[if !mso]>
<> 144:ef7eb2e8f9f7 8 <style>
<> 144:ef7eb2e8f9f7 9 v\:* {behavior:url(#default#VML);}
<> 144:ef7eb2e8f9f7 10 o\:* {behavior:url(#default#VML);}
<> 144:ef7eb2e8f9f7 11 w\:* {behavior:url(#default#VML);}
<> 144:ef7eb2e8f9f7 12 .shape {behavior:url(#default#VML);}
<> 144:ef7eb2e8f9f7 13 </style>
<> 144:ef7eb2e8f9f7 14 <![endif]--><title>Release Notes for STM32F2xx HAL Drivers</title><!--[if gte mso 9]><xml>
<> 144:ef7eb2e8f9f7 15 <o:DocumentProperties>
<> 144:ef7eb2e8f9f7 16 <o:Author>STMicroelectronics</o:Author>
<> 144:ef7eb2e8f9f7 17 <o:LastAuthor>Raouf Hosni</o:LastAuthor>
<> 144:ef7eb2e8f9f7 18 <o:Revision>39</o:Revision>
<> 144:ef7eb2e8f9f7 19 <o:TotalTime>137</o:TotalTime>
<> 144:ef7eb2e8f9f7 20 <o:Created>2009-02-27T19:26:00Z</o:Created>
<> 144:ef7eb2e8f9f7 21 <o:LastSaved>2010-10-15T11:07:00Z</o:LastSaved>
<> 144:ef7eb2e8f9f7 22 <o:Pages>3</o:Pages>
<> 144:ef7eb2e8f9f7 23 <o:Words>973</o:Words>
<> 144:ef7eb2e8f9f7 24 <o:Characters>5548</o:Characters>
<> 144:ef7eb2e8f9f7 25 <o:Company>STMicroelectronics</o:Company>
<> 144:ef7eb2e8f9f7 26 <o:Lines>46</o:Lines>
<> 144:ef7eb2e8f9f7 27 <o:Paragraphs>13</o:Paragraphs>
<> 144:ef7eb2e8f9f7 28 <o:CharactersWithSpaces>6508</o:CharactersWithSpaces>
<> 144:ef7eb2e8f9f7 29 <o:Version>12.00</o:Version>
<> 144:ef7eb2e8f9f7 30 </o:DocumentProperties>
<> 144:ef7eb2e8f9f7 31 </xml><![endif]-->
<> 144:ef7eb2e8f9f7 32
<> 144:ef7eb2e8f9f7 33
<> 144:ef7eb2e8f9f7 34
<> 144:ef7eb2e8f9f7 35 <link rel="themeData" href="Release_Notes_for_STM32F45x_StdPeriph_Driver_files/themedata.thmx">
<> 144:ef7eb2e8f9f7 36 <link rel="colorSchemeMapping" href="Release_Notes_for_STM32F45x_StdPeriph_Driver_files/colorschememapping.xml"><!--[if gte mso 9]><xml>
<> 144:ef7eb2e8f9f7 37 <w:WordDocument>
<> 144:ef7eb2e8f9f7 38 <w:Zoom>110</w:Zoom>
<> 144:ef7eb2e8f9f7 39 <w:TrackMoves>false</w:TrackMoves>
<> 144:ef7eb2e8f9f7 40 <w:TrackFormatting/>
<> 144:ef7eb2e8f9f7 41 <w:ValidateAgainstSchemas/>
<> 144:ef7eb2e8f9f7 42 <w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid>
<> 144:ef7eb2e8f9f7 43 <w:IgnoreMixedContent>false</w:IgnoreMixedContent>
<> 144:ef7eb2e8f9f7 44 <w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText>
<> 144:ef7eb2e8f9f7 45 <w:DoNotPromoteQF/>
<> 144:ef7eb2e8f9f7 46 <w:LidThemeOther>EN-US</w:LidThemeOther>
<> 144:ef7eb2e8f9f7 47 <w:LidThemeAsian>X-NONE</w:LidThemeAsian>
<> 144:ef7eb2e8f9f7 48 <w:LidThemeComplexScript>X-NONE</w:LidThemeComplexScript>
<> 144:ef7eb2e8f9f7 49 <w:Compatibility>
<> 144:ef7eb2e8f9f7 50 <w:BreakWrappedTables/>
<> 144:ef7eb2e8f9f7 51 <w:SnapToGridInCell/>
<> 144:ef7eb2e8f9f7 52 <w:WrapTextWithPunct/>
<> 144:ef7eb2e8f9f7 53 <w:UseAsianBreakRules/>
<> 144:ef7eb2e8f9f7 54 <w:DontGrowAutofit/>
<> 144:ef7eb2e8f9f7 55 <w:SplitPgBreakAndParaMark/>
<> 144:ef7eb2e8f9f7 56 <w:DontVertAlignCellWithSp/>
<> 144:ef7eb2e8f9f7 57 <w:DontBreakConstrainedForcedTables/>
<> 144:ef7eb2e8f9f7 58 <w:DontVertAlignInTxbx/>
<> 144:ef7eb2e8f9f7 59 <w:Word11KerningPairs/>
<> 144:ef7eb2e8f9f7 60 <w:CachedColBalance/>
<> 144:ef7eb2e8f9f7 61 </w:Compatibility>
<> 144:ef7eb2e8f9f7 62 <w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel>
<> 144:ef7eb2e8f9f7 63 <m:mathPr>
<> 144:ef7eb2e8f9f7 64 <m:mathFont m:val="Cambria Math"/>
<> 144:ef7eb2e8f9f7 65 <m:brkBin m:val="before"/>
<> 144:ef7eb2e8f9f7 66 <m:brkBinSub m:val="&#45;-"/>
<> 144:ef7eb2e8f9f7 67 <m:smallFrac m:val="off"/>
<> 144:ef7eb2e8f9f7 68 <m:dispDef/>
<> 144:ef7eb2e8f9f7 69 <m:lMargin m:val="0"/>
<> 144:ef7eb2e8f9f7 70 <m:rMargin m:val="0"/>
<> 144:ef7eb2e8f9f7 71 <m:defJc m:val="centerGroup"/>
<> 144:ef7eb2e8f9f7 72 <m:wrapIndent m:val="1440"/>
<> 144:ef7eb2e8f9f7 73 <m:intLim m:val="subSup"/>
<> 144:ef7eb2e8f9f7 74 <m:naryLim m:val="undOvr"/>
<> 144:ef7eb2e8f9f7 75 </m:mathPr></w:WordDocument>
<> 144:ef7eb2e8f9f7 76 </xml><![endif]--><!--[if gte mso 9]><xml>
<> 144:ef7eb2e8f9f7 77 <w:LatentStyles DefLockedState="false" DefUnhideWhenUsed="false"
<> 144:ef7eb2e8f9f7 78 DefSemiHidden="false" DefQFormat="false" LatentStyleCount="267">
<> 144:ef7eb2e8f9f7 79 <w:LsdException Locked="false" QFormat="true" Name="Normal"/>
<> 144:ef7eb2e8f9f7 80 <w:LsdException Locked="false" QFormat="true" Name="heading 1"/>
<> 144:ef7eb2e8f9f7 81 <w:LsdException Locked="false" QFormat="true" Name="heading 2"/>
<> 144:ef7eb2e8f9f7 82 <w:LsdException Locked="false" QFormat="true" Name="heading 3"/>
<> 144:ef7eb2e8f9f7 83 <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
<> 144:ef7eb2e8f9f7 84 QFormat="true" Name="heading 4"/>
<> 144:ef7eb2e8f9f7 85 <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
<> 144:ef7eb2e8f9f7 86 QFormat="true" Name="heading 5"/>
<> 144:ef7eb2e8f9f7 87 <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
<> 144:ef7eb2e8f9f7 88 QFormat="true" Name="heading 6"/>
<> 144:ef7eb2e8f9f7 89 <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
<> 144:ef7eb2e8f9f7 90 QFormat="true" Name="heading 7"/>
<> 144:ef7eb2e8f9f7 91 <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
<> 144:ef7eb2e8f9f7 92 QFormat="true" Name="heading 8"/>
<> 144:ef7eb2e8f9f7 93 <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
<> 144:ef7eb2e8f9f7 94 QFormat="true" Name="heading 9"/>
<> 144:ef7eb2e8f9f7 95 <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
<> 144:ef7eb2e8f9f7 96 QFormat="true" Name="caption"/>
<> 144:ef7eb2e8f9f7 97 <w:LsdException Locked="false" QFormat="true" Name="Title"/>
<> 144:ef7eb2e8f9f7 98 <w:LsdException Locked="false" Priority="1" Name="Default Paragraph Font"/>
<> 144:ef7eb2e8f9f7 99 <w:LsdException Locked="false" QFormat="true" Name="Subtitle"/>
<> 144:ef7eb2e8f9f7 100 <w:LsdException Locked="false" QFormat="true" Name="Strong"/>
<> 144:ef7eb2e8f9f7 101 <w:LsdException Locked="false" QFormat="true" Name="Emphasis"/>
<> 144:ef7eb2e8f9f7 102 <w:LsdException Locked="false" Priority="99" Name="No List"/>
<> 144:ef7eb2e8f9f7 103 <w:LsdException Locked="false" Priority="99" SemiHidden="true"
<> 144:ef7eb2e8f9f7 104 Name="Placeholder Text"/>
<> 144:ef7eb2e8f9f7 105 <w:LsdException Locked="false" Priority="1" QFormat="true" Name="No Spacing"/>
<> 144:ef7eb2e8f9f7 106 <w:LsdException Locked="false" Priority="60" Name="Light Shading"/>
<> 144:ef7eb2e8f9f7 107 <w:LsdException Locked="false" Priority="61" Name="Light List"/>
<> 144:ef7eb2e8f9f7 108 <w:LsdException Locked="false" Priority="62" Name="Light Grid"/>
<> 144:ef7eb2e8f9f7 109 <w:LsdException Locked="false" Priority="63" Name="Medium Shading 1"/>
<> 144:ef7eb2e8f9f7 110 <w:LsdException Locked="false" Priority="64" Name="Medium Shading 2"/>
<> 144:ef7eb2e8f9f7 111 <w:LsdException Locked="false" Priority="65" Name="Medium List 1"/>
<> 144:ef7eb2e8f9f7 112 <w:LsdException Locked="false" Priority="66" Name="Medium List 2"/>
<> 144:ef7eb2e8f9f7 113 <w:LsdException Locked="false" Priority="67" Name="Medium Grid 1"/>
<> 144:ef7eb2e8f9f7 114 <w:LsdException Locked="false" Priority="68" Name="Medium Grid 2"/>
<> 144:ef7eb2e8f9f7 115 <w:LsdException Locked="false" Priority="69" Name="Medium Grid 3"/>
<> 144:ef7eb2e8f9f7 116 <w:LsdException Locked="false" Priority="70" Name="Dark List"/>
<> 144:ef7eb2e8f9f7 117 <w:LsdException Locked="false" Priority="71" Name="Colorful Shading"/>
<> 144:ef7eb2e8f9f7 118 <w:LsdException Locked="false" Priority="72" Name="Colorful List"/>
<> 144:ef7eb2e8f9f7 119 <w:LsdException Locked="false" Priority="73" Name="Colorful Grid"/>
<> 144:ef7eb2e8f9f7 120 <w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 1"/>
<> 144:ef7eb2e8f9f7 121 <w:LsdException Locked="false" Priority="61" Name="Light List Accent 1"/>
<> 144:ef7eb2e8f9f7 122 <w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 1"/>
<> 144:ef7eb2e8f9f7 123 <w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 1"/>
<> 144:ef7eb2e8f9f7 124 <w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 1"/>
<> 144:ef7eb2e8f9f7 125 <w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 1"/>
<> 144:ef7eb2e8f9f7 126 <w:LsdException Locked="false" Priority="99" SemiHidden="true" Name="Revision"/>
<> 144:ef7eb2e8f9f7 127 <w:LsdException Locked="false" Priority="34" QFormat="true"
<> 144:ef7eb2e8f9f7 128 Name="List Paragraph"/>
<> 144:ef7eb2e8f9f7 129 <w:LsdException Locked="false" Priority="29" QFormat="true" Name="Quote"/>
<> 144:ef7eb2e8f9f7 130 <w:LsdException Locked="false" Priority="30" QFormat="true"
<> 144:ef7eb2e8f9f7 131 Name="Intense Quote"/>
<> 144:ef7eb2e8f9f7 132 <w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 1"/>
<> 144:ef7eb2e8f9f7 133 <w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 1"/>
<> 144:ef7eb2e8f9f7 134 <w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 1"/>
<> 144:ef7eb2e8f9f7 135 <w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 1"/>
<> 144:ef7eb2e8f9f7 136 <w:LsdException Locked="false" Priority="70" Name="Dark List Accent 1"/>
<> 144:ef7eb2e8f9f7 137 <w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 1"/>
<> 144:ef7eb2e8f9f7 138 <w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 1"/>
<> 144:ef7eb2e8f9f7 139 <w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 1"/>
<> 144:ef7eb2e8f9f7 140 <w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 2"/>
<> 144:ef7eb2e8f9f7 141 <w:LsdException Locked="false" Priority="61" Name="Light List Accent 2"/>
<> 144:ef7eb2e8f9f7 142 <w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 2"/>
<> 144:ef7eb2e8f9f7 143 <w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 2"/>
<> 144:ef7eb2e8f9f7 144 <w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 2"/>
<> 144:ef7eb2e8f9f7 145 <w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 2"/>
<> 144:ef7eb2e8f9f7 146 <w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 2"/>
<> 144:ef7eb2e8f9f7 147 <w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 2"/>
<> 144:ef7eb2e8f9f7 148 <w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 2"/>
<> 144:ef7eb2e8f9f7 149 <w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 2"/>
<> 144:ef7eb2e8f9f7 150 <w:LsdException Locked="false" Priority="70" Name="Dark List Accent 2"/>
<> 144:ef7eb2e8f9f7 151 <w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 2"/>
<> 144:ef7eb2e8f9f7 152 <w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 2"/>
<> 144:ef7eb2e8f9f7 153 <w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 2"/>
<> 144:ef7eb2e8f9f7 154 <w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 3"/>
<> 144:ef7eb2e8f9f7 155 <w:LsdException Locked="false" Priority="61" Name="Light List Accent 3"/>
<> 144:ef7eb2e8f9f7 156 <w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 3"/>
<> 144:ef7eb2e8f9f7 157 <w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 3"/>
<> 144:ef7eb2e8f9f7 158 <w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 3"/>
<> 144:ef7eb2e8f9f7 159 <w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 3"/>
<> 144:ef7eb2e8f9f7 160 <w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 3"/>
<> 144:ef7eb2e8f9f7 161 <w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 3"/>
<> 144:ef7eb2e8f9f7 162 <w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 3"/>
<> 144:ef7eb2e8f9f7 163 <w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 3"/>
<> 144:ef7eb2e8f9f7 164 <w:LsdException Locked="false" Priority="70" Name="Dark List Accent 3"/>
<> 144:ef7eb2e8f9f7 165 <w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 3"/>
<> 144:ef7eb2e8f9f7 166 <w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 3"/>
<> 144:ef7eb2e8f9f7 167 <w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 3"/>
<> 144:ef7eb2e8f9f7 168 <w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 4"/>
<> 144:ef7eb2e8f9f7 169 <w:LsdException Locked="false" Priority="61" Name="Light List Accent 4"/>
<> 144:ef7eb2e8f9f7 170 <w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 4"/>
<> 144:ef7eb2e8f9f7 171 <w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 4"/>
<> 144:ef7eb2e8f9f7 172 <w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 4"/>
<> 144:ef7eb2e8f9f7 173 <w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 4"/>
<> 144:ef7eb2e8f9f7 174 <w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 4"/>
<> 144:ef7eb2e8f9f7 175 <w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 4"/>
<> 144:ef7eb2e8f9f7 176 <w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 4"/>
<> 144:ef7eb2e8f9f7 177 <w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 4"/>
<> 144:ef7eb2e8f9f7 178 <w:LsdException Locked="false" Priority="70" Name="Dark List Accent 4"/>
<> 144:ef7eb2e8f9f7 179 <w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 4"/>
<> 144:ef7eb2e8f9f7 180 <w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 4"/>
<> 144:ef7eb2e8f9f7 181 <w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 4"/>
<> 144:ef7eb2e8f9f7 182 <w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 5"/>
<> 144:ef7eb2e8f9f7 183 <w:LsdException Locked="false" Priority="61" Name="Light List Accent 5"/>
<> 144:ef7eb2e8f9f7 184 <w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 5"/>
<> 144:ef7eb2e8f9f7 185 <w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 5"/>
<> 144:ef7eb2e8f9f7 186 <w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 5"/>
<> 144:ef7eb2e8f9f7 187 <w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 5"/>
<> 144:ef7eb2e8f9f7 188 <w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 5"/>
<> 144:ef7eb2e8f9f7 189 <w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 5"/>
<> 144:ef7eb2e8f9f7 190 <w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 5"/>
<> 144:ef7eb2e8f9f7 191 <w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 5"/>
<> 144:ef7eb2e8f9f7 192 <w:LsdException Locked="false" Priority="70" Name="Dark List Accent 5"/>
<> 144:ef7eb2e8f9f7 193 <w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 5"/>
<> 144:ef7eb2e8f9f7 194 <w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 5"/>
<> 144:ef7eb2e8f9f7 195 <w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 5"/>
<> 144:ef7eb2e8f9f7 196 <w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 6"/>
<> 144:ef7eb2e8f9f7 197 <w:LsdException Locked="false" Priority="61" Name="Light List Accent 6"/>
<> 144:ef7eb2e8f9f7 198 <w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 6"/>
<> 144:ef7eb2e8f9f7 199 <w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 6"/>
<> 144:ef7eb2e8f9f7 200 <w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 6"/>
<> 144:ef7eb2e8f9f7 201 <w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 6"/>
<> 144:ef7eb2e8f9f7 202 <w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 6"/>
<> 144:ef7eb2e8f9f7 203 <w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 6"/>
<> 144:ef7eb2e8f9f7 204 <w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 6"/>
<> 144:ef7eb2e8f9f7 205 <w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 6"/>
<> 144:ef7eb2e8f9f7 206 <w:LsdException Locked="false" Priority="70" Name="Dark List Accent 6"/>
<> 144:ef7eb2e8f9f7 207 <w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 6"/>
<> 144:ef7eb2e8f9f7 208 <w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 6"/>
<> 144:ef7eb2e8f9f7 209 <w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 6"/>
<> 144:ef7eb2e8f9f7 210 <w:LsdException Locked="false" Priority="19" QFormat="true"
<> 144:ef7eb2e8f9f7 211 Name="Subtle Emphasis"/>
<> 144:ef7eb2e8f9f7 212 <w:LsdException Locked="false" Priority="21" QFormat="true"
<> 144:ef7eb2e8f9f7 213 Name="Intense Emphasis"/>
<> 144:ef7eb2e8f9f7 214 <w:LsdException Locked="false" Priority="31" QFormat="true"
<> 144:ef7eb2e8f9f7 215 Name="Subtle Reference"/>
<> 144:ef7eb2e8f9f7 216 <w:LsdException Locked="false" Priority="32" QFormat="true"
<> 144:ef7eb2e8f9f7 217 Name="Intense Reference"/>
<> 144:ef7eb2e8f9f7 218 <w:LsdException Locked="false" Priority="33" QFormat="true" Name="Book Title"/>
<> 144:ef7eb2e8f9f7 219 <w:LsdException Locked="false" Priority="37" SemiHidden="true"
<> 144:ef7eb2e8f9f7 220 UnhideWhenUsed="true" Name="Bibliography"/>
<> 144:ef7eb2e8f9f7 221 <w:LsdException Locked="false" Priority="39" SemiHidden="true"
<> 144:ef7eb2e8f9f7 222 UnhideWhenUsed="true" QFormat="true" Name="TOC Heading"/>
<> 144:ef7eb2e8f9f7 223 </w:LatentStyles>
<> 144:ef7eb2e8f9f7 224 </xml><![endif]-->
<> 144:ef7eb2e8f9f7 225
<> 144:ef7eb2e8f9f7 226 <style>
<> 144:ef7eb2e8f9f7 227 <!--
<> 144:ef7eb2e8f9f7 228 /* Font Definitions */
<> 144:ef7eb2e8f9f7 229 @font-face
<> 144:ef7eb2e8f9f7 230 {font-family:"Cambria Math";
<> 144:ef7eb2e8f9f7 231 panose-1:2 4 5 3 5 4 6 3 2 4;
<> 144:ef7eb2e8f9f7 232 mso-font-charset:1;
<> 144:ef7eb2e8f9f7 233 mso-generic-font-family:roman;
<> 144:ef7eb2e8f9f7 234 mso-font-format:other;
<> 144:ef7eb2e8f9f7 235 mso-font-pitch:variable;
<> 144:ef7eb2e8f9f7 236 mso-font-signature:0 0 0 0 0 0;}
<> 144:ef7eb2e8f9f7 237 @font-face
<> 144:ef7eb2e8f9f7 238 {font-family:Calibri;
<> 144:ef7eb2e8f9f7 239 panose-1:2 15 5 2 2 2 4 3 2 4;
<> 144:ef7eb2e8f9f7 240 mso-font-charset:0;
<> 144:ef7eb2e8f9f7 241 mso-generic-font-family:swiss;
<> 144:ef7eb2e8f9f7 242 mso-font-pitch:variable;
<> 144:ef7eb2e8f9f7 243 mso-font-signature:-1610611985 1073750139 0 0 159 0;}
<> 144:ef7eb2e8f9f7 244 @font-face
<> 144:ef7eb2e8f9f7 245 {font-family:Tahoma;
<> 144:ef7eb2e8f9f7 246 panose-1:2 11 6 4 3 5 4 4 2 4;
<> 144:ef7eb2e8f9f7 247 mso-font-charset:0;
<> 144:ef7eb2e8f9f7 248 mso-generic-font-family:swiss;
<> 144:ef7eb2e8f9f7 249 mso-font-pitch:variable;
<> 144:ef7eb2e8f9f7 250 mso-font-signature:1627400839 -2147483648 8 0 66047 0;}
<> 144:ef7eb2e8f9f7 251 @font-face
<> 144:ef7eb2e8f9f7 252 {font-family:Verdana;
<> 144:ef7eb2e8f9f7 253 panose-1:2 11 6 4 3 5 4 4 2 4;
<> 144:ef7eb2e8f9f7 254 mso-font-charset:0;
<> 144:ef7eb2e8f9f7 255 mso-generic-font-family:swiss;
<> 144:ef7eb2e8f9f7 256 mso-font-pitch:variable;
<> 144:ef7eb2e8f9f7 257 mso-font-signature:536871559 0 0 0 415 0;}
<> 144:ef7eb2e8f9f7 258 /* Style Definitions */
<> 144:ef7eb2e8f9f7 259 p.MsoNormal, li.MsoNormal, div.MsoNormal
<> 144:ef7eb2e8f9f7 260 {mso-style-unhide:no;
<> 144:ef7eb2e8f9f7 261 mso-style-qformat:yes;
<> 144:ef7eb2e8f9f7 262 mso-style-parent:"";
<> 144:ef7eb2e8f9f7 263 margin:0in;
<> 144:ef7eb2e8f9f7 264 margin-bottom:.0001pt;
<> 144:ef7eb2e8f9f7 265 mso-pagination:widow-orphan;
<> 144:ef7eb2e8f9f7 266 font-size:12.0pt;
<> 144:ef7eb2e8f9f7 267 font-family:"Times New Roman","serif";
<> 144:ef7eb2e8f9f7 268 mso-fareast-font-family:"Times New Roman";}
<> 144:ef7eb2e8f9f7 269 h1
<> 144:ef7eb2e8f9f7 270 {mso-style-unhide:no;
<> 144:ef7eb2e8f9f7 271 mso-style-qformat:yes;
<> 144:ef7eb2e8f9f7 272 mso-style-link:"Heading 1 Char";
<> 144:ef7eb2e8f9f7 273 mso-margin-top-alt:auto;
<> 144:ef7eb2e8f9f7 274 margin-right:0in;
<> 144:ef7eb2e8f9f7 275 mso-margin-bottom-alt:auto;
<> 144:ef7eb2e8f9f7 276 margin-left:0in;
<> 144:ef7eb2e8f9f7 277 mso-pagination:widow-orphan;
<> 144:ef7eb2e8f9f7 278 mso-outline-level:1;
<> 144:ef7eb2e8f9f7 279 font-size:24.0pt;
<> 144:ef7eb2e8f9f7 280 font-family:"Times New Roman","serif";
<> 144:ef7eb2e8f9f7 281 mso-fareast-font-family:"Times New Roman";
<> 144:ef7eb2e8f9f7 282 mso-fareast-theme-font:minor-fareast;
<> 144:ef7eb2e8f9f7 283 font-weight:bold;}
<> 144:ef7eb2e8f9f7 284 h2
<> 144:ef7eb2e8f9f7 285 {mso-style-unhide:no;
<> 144:ef7eb2e8f9f7 286 mso-style-qformat:yes;
<> 144:ef7eb2e8f9f7 287 mso-style-link:"Heading 2 Char";
<> 144:ef7eb2e8f9f7 288 mso-style-next:Normal;
<> 144:ef7eb2e8f9f7 289 margin-top:12.0pt;
<> 144:ef7eb2e8f9f7 290 margin-right:0in;
<> 144:ef7eb2e8f9f7 291 margin-bottom:3.0pt;
<> 144:ef7eb2e8f9f7 292 margin-left:0in;
<> 144:ef7eb2e8f9f7 293 mso-pagination:widow-orphan;
<> 144:ef7eb2e8f9f7 294 page-break-after:avoid;
<> 144:ef7eb2e8f9f7 295 mso-outline-level:2;
<> 144:ef7eb2e8f9f7 296 font-size:14.0pt;
<> 144:ef7eb2e8f9f7 297 font-family:"Arial","sans-serif";
<> 144:ef7eb2e8f9f7 298 mso-fareast-font-family:"Times New Roman";
<> 144:ef7eb2e8f9f7 299 mso-fareast-theme-font:minor-fareast;
<> 144:ef7eb2e8f9f7 300 font-weight:bold;
<> 144:ef7eb2e8f9f7 301 font-style:italic;}
<> 144:ef7eb2e8f9f7 302 h3
<> 144:ef7eb2e8f9f7 303 {mso-style-unhide:no;
<> 144:ef7eb2e8f9f7 304 mso-style-qformat:yes;
<> 144:ef7eb2e8f9f7 305 mso-style-link:"Heading 3 Char";
<> 144:ef7eb2e8f9f7 306 mso-margin-top-alt:auto;
<> 144:ef7eb2e8f9f7 307 margin-right:0in;
<> 144:ef7eb2e8f9f7 308 mso-margin-bottom-alt:auto;
<> 144:ef7eb2e8f9f7 309 margin-left:0in;
<> 144:ef7eb2e8f9f7 310 mso-pagination:widow-orphan;
<> 144:ef7eb2e8f9f7 311 mso-outline-level:3;
<> 144:ef7eb2e8f9f7 312 font-size:13.5pt;
<> 144:ef7eb2e8f9f7 313 font-family:"Times New Roman","serif";
<> 144:ef7eb2e8f9f7 314 mso-fareast-font-family:"Times New Roman";
<> 144:ef7eb2e8f9f7 315 mso-fareast-theme-font:minor-fareast;
<> 144:ef7eb2e8f9f7 316 font-weight:bold;}
<> 144:ef7eb2e8f9f7 317 a:link, span.MsoHyperlink
<> 144:ef7eb2e8f9f7 318 {mso-style-unhide:no;
<> 144:ef7eb2e8f9f7 319 color:blue;
<> 144:ef7eb2e8f9f7 320 text-decoration:underline;
<> 144:ef7eb2e8f9f7 321 text-underline:single;}
<> 144:ef7eb2e8f9f7 322 a:visited, span.MsoHyperlinkFollowed
<> 144:ef7eb2e8f9f7 323 {mso-style-unhide:no;
<> 144:ef7eb2e8f9f7 324 color:blue;
<> 144:ef7eb2e8f9f7 325 text-decoration:underline;
<> 144:ef7eb2e8f9f7 326 text-underline:single;}
<> 144:ef7eb2e8f9f7 327 p
<> 144:ef7eb2e8f9f7 328 {mso-style-unhide:no;
<> 144:ef7eb2e8f9f7 329 mso-margin-top-alt:auto;
<> 144:ef7eb2e8f9f7 330 margin-right:0in;
<> 144:ef7eb2e8f9f7 331 mso-margin-bottom-alt:auto;
<> 144:ef7eb2e8f9f7 332 margin-left:0in;
<> 144:ef7eb2e8f9f7 333 mso-pagination:widow-orphan;
<> 144:ef7eb2e8f9f7 334 font-size:12.0pt;
<> 144:ef7eb2e8f9f7 335 font-family:"Times New Roman","serif";
<> 144:ef7eb2e8f9f7 336 mso-fareast-font-family:"Times New Roman";}
<> 144:ef7eb2e8f9f7 337 p.MsoAcetate, li.MsoAcetate, div.MsoAcetate
<> 144:ef7eb2e8f9f7 338 {mso-style-unhide:no;
<> 144:ef7eb2e8f9f7 339 mso-style-link:"Balloon Text Char";
<> 144:ef7eb2e8f9f7 340 margin:0in;
<> 144:ef7eb2e8f9f7 341 margin-bottom:.0001pt;
<> 144:ef7eb2e8f9f7 342 mso-pagination:widow-orphan;
<> 144:ef7eb2e8f9f7 343 font-size:8.0pt;
<> 144:ef7eb2e8f9f7 344 font-family:"Tahoma","sans-serif";
<> 144:ef7eb2e8f9f7 345 mso-fareast-font-family:"Times New Roman";}
<> 144:ef7eb2e8f9f7 346 span.Heading1Char
<> 144:ef7eb2e8f9f7 347 {mso-style-name:"Heading 1 Char";
<> 144:ef7eb2e8f9f7 348 mso-style-unhide:no;
<> 144:ef7eb2e8f9f7 349 mso-style-locked:yes;
<> 144:ef7eb2e8f9f7 350 mso-style-link:"Heading 1";
<> 144:ef7eb2e8f9f7 351 mso-ansi-font-size:14.0pt;
<> 144:ef7eb2e8f9f7 352 mso-bidi-font-size:14.0pt;
<> 144:ef7eb2e8f9f7 353 font-family:"Cambria","serif";
<> 144:ef7eb2e8f9f7 354 mso-ascii-font-family:Cambria;
<> 144:ef7eb2e8f9f7 355 mso-ascii-theme-font:major-latin;
<> 144:ef7eb2e8f9f7 356 mso-fareast-font-family:"Times New Roman";
<> 144:ef7eb2e8f9f7 357 mso-fareast-theme-font:major-fareast;
<> 144:ef7eb2e8f9f7 358 mso-hansi-font-family:Cambria;
<> 144:ef7eb2e8f9f7 359 mso-hansi-theme-font:major-latin;
<> 144:ef7eb2e8f9f7 360 mso-bidi-font-family:"Times New Roman";
<> 144:ef7eb2e8f9f7 361 mso-bidi-theme-font:major-bidi;
<> 144:ef7eb2e8f9f7 362 color:#365F91;
<> 144:ef7eb2e8f9f7 363 mso-themecolor:accent1;
<> 144:ef7eb2e8f9f7 364 mso-themeshade:191;
<> 144:ef7eb2e8f9f7 365 font-weight:bold;}
<> 144:ef7eb2e8f9f7 366 span.Heading2Char
<> 144:ef7eb2e8f9f7 367 {mso-style-name:"Heading 2 Char";
<> 144:ef7eb2e8f9f7 368 mso-style-unhide:no;
<> 144:ef7eb2e8f9f7 369 mso-style-locked:yes;
<> 144:ef7eb2e8f9f7 370 mso-style-link:"Heading 2";
<> 144:ef7eb2e8f9f7 371 mso-ansi-font-size:13.0pt;
<> 144:ef7eb2e8f9f7 372 mso-bidi-font-size:13.0pt;
<> 144:ef7eb2e8f9f7 373 font-family:"Cambria","serif";
<> 144:ef7eb2e8f9f7 374 mso-ascii-font-family:Cambria;
<> 144:ef7eb2e8f9f7 375 mso-ascii-theme-font:major-latin;
<> 144:ef7eb2e8f9f7 376 mso-fareast-font-family:"Times New Roman";
<> 144:ef7eb2e8f9f7 377 mso-fareast-theme-font:major-fareast;
<> 144:ef7eb2e8f9f7 378 mso-hansi-font-family:Cambria;
<> 144:ef7eb2e8f9f7 379 mso-hansi-theme-font:major-latin;
<> 144:ef7eb2e8f9f7 380 mso-bidi-font-family:"Times New Roman";
<> 144:ef7eb2e8f9f7 381 mso-bidi-theme-font:major-bidi;
<> 144:ef7eb2e8f9f7 382 color:#4F81BD;
<> 144:ef7eb2e8f9f7 383 mso-themecolor:accent1;
<> 144:ef7eb2e8f9f7 384 font-weight:bold;}
<> 144:ef7eb2e8f9f7 385 span.Heading3Char
<> 144:ef7eb2e8f9f7 386 {mso-style-name:"Heading 3 Char";
<> 144:ef7eb2e8f9f7 387 mso-style-unhide:no;
<> 144:ef7eb2e8f9f7 388 mso-style-locked:yes;
<> 144:ef7eb2e8f9f7 389 mso-style-link:"Heading 3";
<> 144:ef7eb2e8f9f7 390 mso-ansi-font-size:12.0pt;
<> 144:ef7eb2e8f9f7 391 mso-bidi-font-size:12.0pt;
<> 144:ef7eb2e8f9f7 392 font-family:"Cambria","serif";
<> 144:ef7eb2e8f9f7 393 mso-ascii-font-family:Cambria;
<> 144:ef7eb2e8f9f7 394 mso-ascii-theme-font:major-latin;
<> 144:ef7eb2e8f9f7 395 mso-fareast-font-family:"Times New Roman";
<> 144:ef7eb2e8f9f7 396 mso-fareast-theme-font:major-fareast;
<> 144:ef7eb2e8f9f7 397 mso-hansi-font-family:Cambria;
<> 144:ef7eb2e8f9f7 398 mso-hansi-theme-font:major-latin;
<> 144:ef7eb2e8f9f7 399 mso-bidi-font-family:"Times New Roman";
<> 144:ef7eb2e8f9f7 400 mso-bidi-theme-font:major-bidi;
<> 144:ef7eb2e8f9f7 401 color:#4F81BD;
<> 144:ef7eb2e8f9f7 402 mso-themecolor:accent1;
<> 144:ef7eb2e8f9f7 403 font-weight:bold;}
<> 144:ef7eb2e8f9f7 404 span.BalloonTextChar
<> 144:ef7eb2e8f9f7 405 {mso-style-name:"Balloon Text Char";
<> 144:ef7eb2e8f9f7 406 mso-style-unhide:no;
<> 144:ef7eb2e8f9f7 407 mso-style-locked:yes;
<> 144:ef7eb2e8f9f7 408 mso-style-link:"Balloon Text";
<> 144:ef7eb2e8f9f7 409 mso-ansi-font-size:8.0pt;
<> 144:ef7eb2e8f9f7 410 mso-bidi-font-size:8.0pt;
<> 144:ef7eb2e8f9f7 411 font-family:"Tahoma","sans-serif";
<> 144:ef7eb2e8f9f7 412 mso-ascii-font-family:Tahoma;
<> 144:ef7eb2e8f9f7 413 mso-hansi-font-family:Tahoma;
<> 144:ef7eb2e8f9f7 414 mso-bidi-font-family:Tahoma;}
<> 144:ef7eb2e8f9f7 415 .MsoChpDefault
<> 144:ef7eb2e8f9f7 416 {mso-style-type:export-only;
<> 144:ef7eb2e8f9f7 417 mso-default-props:yes;
<> 144:ef7eb2e8f9f7 418 font-size:10.0pt;
<> 144:ef7eb2e8f9f7 419 mso-ansi-font-size:10.0pt;
<> 144:ef7eb2e8f9f7 420 mso-bidi-font-size:10.0pt;}
<> 144:ef7eb2e8f9f7 421 @page WordSection1
<> 144:ef7eb2e8f9f7 422 {size:8.5in 11.0in;
<> 144:ef7eb2e8f9f7 423 margin:1.0in 1.25in 1.0in 1.25in;
<> 144:ef7eb2e8f9f7 424 mso-header-margin:.5in;
<> 144:ef7eb2e8f9f7 425 mso-footer-margin:.5in;
<> 144:ef7eb2e8f9f7 426 mso-paper-source:0;}
<> 144:ef7eb2e8f9f7 427 div.WordSection1
<> 144:ef7eb2e8f9f7 428 {page:WordSection1;}
<> 144:ef7eb2e8f9f7 429 /* List Definitions */
<> 144:ef7eb2e8f9f7 430 @list l0
<> 144:ef7eb2e8f9f7 431 {mso-list-id:62067358;
<> 144:ef7eb2e8f9f7 432 mso-list-template-ids:-174943062;}
<> 144:ef7eb2e8f9f7 433 @list l0:level1
<> 144:ef7eb2e8f9f7 434 {mso-level-number-format:bullet;
<> 144:ef7eb2e8f9f7 435 mso-level-text:\F0B7;
<> 144:ef7eb2e8f9f7 436 mso-level-tab-stop:.5in;
<> 144:ef7eb2e8f9f7 437 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 438 text-indent:-.25in;
<> 144:ef7eb2e8f9f7 439 mso-ansi-font-size:10.0pt;
<> 144:ef7eb2e8f9f7 440 font-family:Symbol;}
<> 144:ef7eb2e8f9f7 441 @list l0:level2
<> 144:ef7eb2e8f9f7 442 {mso-level-tab-stop:1.0in;
<> 144:ef7eb2e8f9f7 443 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 444 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 445 @list l0:level3
<> 144:ef7eb2e8f9f7 446 {mso-level-tab-stop:1.5in;
<> 144:ef7eb2e8f9f7 447 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 448 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 449 @list l0:level4
<> 144:ef7eb2e8f9f7 450 {mso-level-tab-stop:2.0in;
<> 144:ef7eb2e8f9f7 451 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 452 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 453 @list l0:level5
<> 144:ef7eb2e8f9f7 454 {mso-level-tab-stop:2.5in;
<> 144:ef7eb2e8f9f7 455 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 456 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 457 @list l0:level6
<> 144:ef7eb2e8f9f7 458 {mso-level-tab-stop:3.0in;
<> 144:ef7eb2e8f9f7 459 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 460 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 461 @list l0:level7
<> 144:ef7eb2e8f9f7 462 {mso-level-tab-stop:3.5in;
<> 144:ef7eb2e8f9f7 463 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 464 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 465 @list l0:level8
<> 144:ef7eb2e8f9f7 466 {mso-level-tab-stop:4.0in;
<> 144:ef7eb2e8f9f7 467 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 468 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 469 @list l0:level9
<> 144:ef7eb2e8f9f7 470 {mso-level-tab-stop:4.5in;
<> 144:ef7eb2e8f9f7 471 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 472 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 473 @list l1
<> 144:ef7eb2e8f9f7 474 {mso-list-id:128015942;
<> 144:ef7eb2e8f9f7 475 mso-list-template-ids:-90681214;}
<> 144:ef7eb2e8f9f7 476 @list l1:level1
<> 144:ef7eb2e8f9f7 477 {mso-level-tab-stop:.5in;
<> 144:ef7eb2e8f9f7 478 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 479 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 480 @list l1:level2
<> 144:ef7eb2e8f9f7 481 {mso-level-tab-stop:1.0in;
<> 144:ef7eb2e8f9f7 482 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 483 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 484 @list l1:level3
<> 144:ef7eb2e8f9f7 485 {mso-level-tab-stop:1.5in;
<> 144:ef7eb2e8f9f7 486 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 487 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 488 @list l1:level4
<> 144:ef7eb2e8f9f7 489 {mso-level-tab-stop:2.0in;
<> 144:ef7eb2e8f9f7 490 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 491 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 492 @list l1:level5
<> 144:ef7eb2e8f9f7 493 {mso-level-tab-stop:2.5in;
<> 144:ef7eb2e8f9f7 494 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 495 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 496 @list l1:level6
<> 144:ef7eb2e8f9f7 497 {mso-level-tab-stop:3.0in;
<> 144:ef7eb2e8f9f7 498 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 499 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 500 @list l1:level7
<> 144:ef7eb2e8f9f7 501 {mso-level-tab-stop:3.5in;
<> 144:ef7eb2e8f9f7 502 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 503 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 504 @list l1:level8
<> 144:ef7eb2e8f9f7 505 {mso-level-tab-stop:4.0in;
<> 144:ef7eb2e8f9f7 506 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 507 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 508 @list l1:level9
<> 144:ef7eb2e8f9f7 509 {mso-level-tab-stop:4.5in;
<> 144:ef7eb2e8f9f7 510 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 511 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 512 @list l2
<> 144:ef7eb2e8f9f7 513 {mso-list-id:216556000;
<> 144:ef7eb2e8f9f7 514 mso-list-template-ids:925924412;}
<> 144:ef7eb2e8f9f7 515 @list l2:level1
<> 144:ef7eb2e8f9f7 516 {mso-level-number-format:bullet;
<> 144:ef7eb2e8f9f7 517 mso-level-text:\F0B7;
<> 144:ef7eb2e8f9f7 518 mso-level-tab-stop:.5in;
<> 144:ef7eb2e8f9f7 519 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 520 text-indent:-.25in;
<> 144:ef7eb2e8f9f7 521 mso-ansi-font-size:10.0pt;
<> 144:ef7eb2e8f9f7 522 font-family:Symbol;}
<> 144:ef7eb2e8f9f7 523 @list l2:level2
<> 144:ef7eb2e8f9f7 524 {mso-level-number-format:bullet;
<> 144:ef7eb2e8f9f7 525 mso-level-text:\F0B7;
<> 144:ef7eb2e8f9f7 526 mso-level-tab-stop:1.0in;
<> 144:ef7eb2e8f9f7 527 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 528 text-indent:-.25in;
<> 144:ef7eb2e8f9f7 529 mso-ansi-font-size:10.0pt;
<> 144:ef7eb2e8f9f7 530 font-family:Symbol;}
<> 144:ef7eb2e8f9f7 531 @list l2:level3
<> 144:ef7eb2e8f9f7 532 {mso-level-tab-stop:1.5in;
<> 144:ef7eb2e8f9f7 533 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 534 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 535 @list l2:level4
<> 144:ef7eb2e8f9f7 536 {mso-level-tab-stop:2.0in;
<> 144:ef7eb2e8f9f7 537 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 538 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 539 @list l2:level5
<> 144:ef7eb2e8f9f7 540 {mso-level-tab-stop:2.5in;
<> 144:ef7eb2e8f9f7 541 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 542 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 543 @list l2:level6
<> 144:ef7eb2e8f9f7 544 {mso-level-tab-stop:3.0in;
<> 144:ef7eb2e8f9f7 545 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 546 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 547 @list l2:level7
<> 144:ef7eb2e8f9f7 548 {mso-level-tab-stop:3.5in;
<> 144:ef7eb2e8f9f7 549 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 550 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 551 @list l2:level8
<> 144:ef7eb2e8f9f7 552 {mso-level-tab-stop:4.0in;
<> 144:ef7eb2e8f9f7 553 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 554 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 555 @list l2:level9
<> 144:ef7eb2e8f9f7 556 {mso-level-tab-stop:4.5in;
<> 144:ef7eb2e8f9f7 557 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 558 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 559 @list l3
<> 144:ef7eb2e8f9f7 560 {mso-list-id:562446694;
<> 144:ef7eb2e8f9f7 561 mso-list-template-ids:913898366;}
<> 144:ef7eb2e8f9f7 562 @list l3:level1
<> 144:ef7eb2e8f9f7 563 {mso-level-number-format:bullet;
<> 144:ef7eb2e8f9f7 564 mso-level-text:\F0B7;
<> 144:ef7eb2e8f9f7 565 mso-level-tab-stop:.5in;
<> 144:ef7eb2e8f9f7 566 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 567 text-indent:-.25in;
<> 144:ef7eb2e8f9f7 568 mso-ansi-font-size:10.0pt;
<> 144:ef7eb2e8f9f7 569 font-family:Symbol;}
<> 144:ef7eb2e8f9f7 570 @list l3:level2
<> 144:ef7eb2e8f9f7 571 {mso-level-tab-stop:1.0in;
<> 144:ef7eb2e8f9f7 572 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 573 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 574 @list l3:level3
<> 144:ef7eb2e8f9f7 575 {mso-level-tab-stop:1.5in;
<> 144:ef7eb2e8f9f7 576 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 577 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 578 @list l3:level4
<> 144:ef7eb2e8f9f7 579 {mso-level-tab-stop:2.0in;
<> 144:ef7eb2e8f9f7 580 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 581 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 582 @list l3:level5
<> 144:ef7eb2e8f9f7 583 {mso-level-tab-stop:2.5in;
<> 144:ef7eb2e8f9f7 584 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 585 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 586 @list l3:level6
<> 144:ef7eb2e8f9f7 587 {mso-level-tab-stop:3.0in;
<> 144:ef7eb2e8f9f7 588 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 589 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 590 @list l3:level7
<> 144:ef7eb2e8f9f7 591 {mso-level-tab-stop:3.5in;
<> 144:ef7eb2e8f9f7 592 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 593 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 594 @list l3:level8
<> 144:ef7eb2e8f9f7 595 {mso-level-tab-stop:4.0in;
<> 144:ef7eb2e8f9f7 596 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 597 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 598 @list l3:level9
<> 144:ef7eb2e8f9f7 599 {mso-level-tab-stop:4.5in;
<> 144:ef7eb2e8f9f7 600 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 601 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 602 @list l4
<> 144:ef7eb2e8f9f7 603 {mso-list-id:797802132;
<> 144:ef7eb2e8f9f7 604 mso-list-template-ids:-1971191336;}
<> 144:ef7eb2e8f9f7 605 @list l4:level1
<> 144:ef7eb2e8f9f7 606 {mso-level-tab-stop:.5in;
<> 144:ef7eb2e8f9f7 607 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 608 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 609 @list l4:level2
<> 144:ef7eb2e8f9f7 610 {mso-level-tab-stop:1.0in;
<> 144:ef7eb2e8f9f7 611 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 612 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 613 @list l4:level3
<> 144:ef7eb2e8f9f7 614 {mso-level-tab-stop:1.5in;
<> 144:ef7eb2e8f9f7 615 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 616 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 617 @list l4:level4
<> 144:ef7eb2e8f9f7 618 {mso-level-tab-stop:2.0in;
<> 144:ef7eb2e8f9f7 619 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 620 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 621 @list l4:level5
<> 144:ef7eb2e8f9f7 622 {mso-level-tab-stop:2.5in;
<> 144:ef7eb2e8f9f7 623 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 624 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 625 @list l4:level6
<> 144:ef7eb2e8f9f7 626 {mso-level-tab-stop:3.0in;
<> 144:ef7eb2e8f9f7 627 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 628 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 629 @list l4:level7
<> 144:ef7eb2e8f9f7 630 {mso-level-tab-stop:3.5in;
<> 144:ef7eb2e8f9f7 631 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 632 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 633 @list l4:level8
<> 144:ef7eb2e8f9f7 634 {mso-level-tab-stop:4.0in;
<> 144:ef7eb2e8f9f7 635 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 636 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 637 @list l4:level9
<> 144:ef7eb2e8f9f7 638 {mso-level-tab-stop:4.5in;
<> 144:ef7eb2e8f9f7 639 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 640 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 641 @list l5
<> 144:ef7eb2e8f9f7 642 {mso-list-id:907304066;
<> 144:ef7eb2e8f9f7 643 mso-list-template-ids:1969781532;}
<> 144:ef7eb2e8f9f7 644 @list l5:level1
<> 144:ef7eb2e8f9f7 645 {mso-level-tab-stop:.5in;
<> 144:ef7eb2e8f9f7 646 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 647 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 648 @list l5:level2
<> 144:ef7eb2e8f9f7 649 {mso-level-tab-stop:1.0in;
<> 144:ef7eb2e8f9f7 650 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 651 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 652 @list l5:level3
<> 144:ef7eb2e8f9f7 653 {mso-level-tab-stop:1.5in;
<> 144:ef7eb2e8f9f7 654 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 655 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 656 @list l5:level4
<> 144:ef7eb2e8f9f7 657 {mso-level-tab-stop:2.0in;
<> 144:ef7eb2e8f9f7 658 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 659 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 660 @list l5:level5
<> 144:ef7eb2e8f9f7 661 {mso-level-tab-stop:2.5in;
<> 144:ef7eb2e8f9f7 662 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 663 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 664 @list l5:level6
<> 144:ef7eb2e8f9f7 665 {mso-level-tab-stop:3.0in;
<> 144:ef7eb2e8f9f7 666 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 667 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 668 @list l5:level7
<> 144:ef7eb2e8f9f7 669 {mso-level-tab-stop:3.5in;
<> 144:ef7eb2e8f9f7 670 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 671 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 672 @list l5:level8
<> 144:ef7eb2e8f9f7 673 {mso-level-tab-stop:4.0in;
<> 144:ef7eb2e8f9f7 674 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 675 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 676 @list l5:level9
<> 144:ef7eb2e8f9f7 677 {mso-level-tab-stop:4.5in;
<> 144:ef7eb2e8f9f7 678 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 679 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 680 @list l6
<> 144:ef7eb2e8f9f7 681 {mso-list-id:1050613616;
<> 144:ef7eb2e8f9f7 682 mso-list-template-ids:-1009886748;}
<> 144:ef7eb2e8f9f7 683 @list l6:level1
<> 144:ef7eb2e8f9f7 684 {mso-level-number-format:bullet;
<> 144:ef7eb2e8f9f7 685 mso-level-text:\F0B7;
<> 144:ef7eb2e8f9f7 686 mso-level-tab-stop:.5in;
<> 144:ef7eb2e8f9f7 687 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 688 text-indent:-.25in;
<> 144:ef7eb2e8f9f7 689 mso-ansi-font-size:10.0pt;
<> 144:ef7eb2e8f9f7 690 font-family:Symbol;}
<> 144:ef7eb2e8f9f7 691 @list l6:level2
<> 144:ef7eb2e8f9f7 692 {mso-level-number-format:bullet;
<> 144:ef7eb2e8f9f7 693 mso-level-text:\F0B7;
<> 144:ef7eb2e8f9f7 694 mso-level-tab-stop:1.0in;
<> 144:ef7eb2e8f9f7 695 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 696 text-indent:-.25in;
<> 144:ef7eb2e8f9f7 697 mso-ansi-font-size:10.0pt;
<> 144:ef7eb2e8f9f7 698 font-family:Symbol;}
<> 144:ef7eb2e8f9f7 699 @list l6:level3
<> 144:ef7eb2e8f9f7 700 {mso-level-tab-stop:1.5in;
<> 144:ef7eb2e8f9f7 701 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 702 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 703 @list l6:level4
<> 144:ef7eb2e8f9f7 704 {mso-level-tab-stop:2.0in;
<> 144:ef7eb2e8f9f7 705 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 706 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 707 @list l6:level5
<> 144:ef7eb2e8f9f7 708 {mso-level-tab-stop:2.5in;
<> 144:ef7eb2e8f9f7 709 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 710 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 711 @list l6:level6
<> 144:ef7eb2e8f9f7 712 {mso-level-tab-stop:3.0in;
<> 144:ef7eb2e8f9f7 713 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 714 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 715 @list l6:level7
<> 144:ef7eb2e8f9f7 716 {mso-level-tab-stop:3.5in;
<> 144:ef7eb2e8f9f7 717 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 718 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 719 @list l6:level8
<> 144:ef7eb2e8f9f7 720 {mso-level-tab-stop:4.0in;
<> 144:ef7eb2e8f9f7 721 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 722 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 723 @list l6:level9
<> 144:ef7eb2e8f9f7 724 {mso-level-tab-stop:4.5in;
<> 144:ef7eb2e8f9f7 725 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 726 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 727 @list l7
<> 144:ef7eb2e8f9f7 728 {mso-list-id:1234970193;
<> 144:ef7eb2e8f9f7 729 mso-list-template-ids:2055904002;}
<> 144:ef7eb2e8f9f7 730 @list l7:level1
<> 144:ef7eb2e8f9f7 731 {mso-level-number-format:bullet;
<> 144:ef7eb2e8f9f7 732 mso-level-text:\F0B7;
<> 144:ef7eb2e8f9f7 733 mso-level-tab-stop:.5in;
<> 144:ef7eb2e8f9f7 734 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 735 text-indent:-.25in;
<> 144:ef7eb2e8f9f7 736 mso-ansi-font-size:10.0pt;
<> 144:ef7eb2e8f9f7 737 font-family:Symbol;}
<> 144:ef7eb2e8f9f7 738 @list l7:level2
<> 144:ef7eb2e8f9f7 739 {mso-level-number-format:bullet;
<> 144:ef7eb2e8f9f7 740 mso-level-text:\F0B7;
<> 144:ef7eb2e8f9f7 741 mso-level-tab-stop:1.0in;
<> 144:ef7eb2e8f9f7 742 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 743 text-indent:-.25in;
<> 144:ef7eb2e8f9f7 744 mso-ansi-font-size:10.0pt;
<> 144:ef7eb2e8f9f7 745 font-family:Symbol;}
<> 144:ef7eb2e8f9f7 746 @list l7:level3
<> 144:ef7eb2e8f9f7 747 {mso-level-tab-stop:1.5in;
<> 144:ef7eb2e8f9f7 748 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 749 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 750 @list l7:level4
<> 144:ef7eb2e8f9f7 751 {mso-level-tab-stop:2.0in;
<> 144:ef7eb2e8f9f7 752 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 753 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 754 @list l7:level5
<> 144:ef7eb2e8f9f7 755 {mso-level-tab-stop:2.5in;
<> 144:ef7eb2e8f9f7 756 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 757 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 758 @list l7:level6
<> 144:ef7eb2e8f9f7 759 {mso-level-tab-stop:3.0in;
<> 144:ef7eb2e8f9f7 760 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 761 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 762 @list l7:level7
<> 144:ef7eb2e8f9f7 763 {mso-level-tab-stop:3.5in;
<> 144:ef7eb2e8f9f7 764 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 765 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 766 @list l7:level8
<> 144:ef7eb2e8f9f7 767 {mso-level-tab-stop:4.0in;
<> 144:ef7eb2e8f9f7 768 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 769 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 770 @list l7:level9
<> 144:ef7eb2e8f9f7 771 {mso-level-tab-stop:4.5in;
<> 144:ef7eb2e8f9f7 772 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 773 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 774 @list l8
<> 144:ef7eb2e8f9f7 775 {mso-list-id:1846092290;
<> 144:ef7eb2e8f9f7 776 mso-list-template-ids:-768590846;}
<> 144:ef7eb2e8f9f7 777 @list l8:level1
<> 144:ef7eb2e8f9f7 778 {mso-level-start-at:2;
<> 144:ef7eb2e8f9f7 779 mso-level-tab-stop:.5in;
<> 144:ef7eb2e8f9f7 780 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 781 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 782 @list l8:level2
<> 144:ef7eb2e8f9f7 783 {mso-level-tab-stop:1.0in;
<> 144:ef7eb2e8f9f7 784 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 785 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 786 @list l8:level3
<> 144:ef7eb2e8f9f7 787 {mso-level-tab-stop:1.5in;
<> 144:ef7eb2e8f9f7 788 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 789 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 790 @list l8:level4
<> 144:ef7eb2e8f9f7 791 {mso-level-tab-stop:2.0in;
<> 144:ef7eb2e8f9f7 792 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 793 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 794 @list l8:level5
<> 144:ef7eb2e8f9f7 795 {mso-level-tab-stop:2.5in;
<> 144:ef7eb2e8f9f7 796 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 797 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 798 @list l8:level6
<> 144:ef7eb2e8f9f7 799 {mso-level-tab-stop:3.0in;
<> 144:ef7eb2e8f9f7 800 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 801 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 802 @list l8:level7
<> 144:ef7eb2e8f9f7 803 {mso-level-tab-stop:3.5in;
<> 144:ef7eb2e8f9f7 804 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 805 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 806 @list l8:level8
<> 144:ef7eb2e8f9f7 807 {mso-level-tab-stop:4.0in;
<> 144:ef7eb2e8f9f7 808 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 809 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 810 @list l8:level9
<> 144:ef7eb2e8f9f7 811 {mso-level-tab-stop:4.5in;
<> 144:ef7eb2e8f9f7 812 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 813 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 814 @list l9
<> 144:ef7eb2e8f9f7 815 {mso-list-id:1894656566;
<> 144:ef7eb2e8f9f7 816 mso-list-template-ids:1199983812;}
<> 144:ef7eb2e8f9f7 817 @list l9:level1
<> 144:ef7eb2e8f9f7 818 {mso-level-start-at:2;
<> 144:ef7eb2e8f9f7 819 mso-level-tab-stop:.5in;
<> 144:ef7eb2e8f9f7 820 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 821 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 822 @list l9:level2
<> 144:ef7eb2e8f9f7 823 {mso-level-tab-stop:1.0in;
<> 144:ef7eb2e8f9f7 824 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 825 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 826 @list l9:level3
<> 144:ef7eb2e8f9f7 827 {mso-level-tab-stop:1.5in;
<> 144:ef7eb2e8f9f7 828 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 829 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 830 @list l9:level4
<> 144:ef7eb2e8f9f7 831 {mso-level-tab-stop:2.0in;
<> 144:ef7eb2e8f9f7 832 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 833 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 834 @list l9:level5
<> 144:ef7eb2e8f9f7 835 {mso-level-tab-stop:2.5in;
<> 144:ef7eb2e8f9f7 836 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 837 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 838 @list l9:level6
<> 144:ef7eb2e8f9f7 839 {mso-level-tab-stop:3.0in;
<> 144:ef7eb2e8f9f7 840 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 841 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 842 @list l9:level7
<> 144:ef7eb2e8f9f7 843 {mso-level-tab-stop:3.5in;
<> 144:ef7eb2e8f9f7 844 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 845 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 846 @list l9:level8
<> 144:ef7eb2e8f9f7 847 {mso-level-tab-stop:4.0in;
<> 144:ef7eb2e8f9f7 848 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 849 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 850 @list l9:level9
<> 144:ef7eb2e8f9f7 851 {mso-level-tab-stop:4.5in;
<> 144:ef7eb2e8f9f7 852 mso-level-number-position:left;
<> 144:ef7eb2e8f9f7 853 text-indent:-.25in;}
<> 144:ef7eb2e8f9f7 854 ol
<> 144:ef7eb2e8f9f7 855 {margin-bottom:0in;}
<> 144:ef7eb2e8f9f7 856 ul
<> 144:ef7eb2e8f9f7 857 {margin-bottom:0in;}
<> 144:ef7eb2e8f9f7 858 -->
<> 144:ef7eb2e8f9f7 859 </style><!--[if gte mso 10]>
<> 144:ef7eb2e8f9f7 860 <style>
<> 144:ef7eb2e8f9f7 861 /* Style Definitions */
<> 144:ef7eb2e8f9f7 862 table.MsoNormalTable
<> 144:ef7eb2e8f9f7 863 {mso-style-name:"Table Normal";
<> 144:ef7eb2e8f9f7 864 mso-tstyle-rowband-size:0;
<> 144:ef7eb2e8f9f7 865 mso-tstyle-colband-size:0;
<> 144:ef7eb2e8f9f7 866 mso-style-noshow:yes;
<> 144:ef7eb2e8f9f7 867 mso-style-priority:99;
<> 144:ef7eb2e8f9f7 868 mso-style-qformat:yes;
<> 144:ef7eb2e8f9f7 869 mso-style-parent:"";
<> 144:ef7eb2e8f9f7 870 mso-padding-alt:0in 5.4pt 0in 5.4pt;
<> 144:ef7eb2e8f9f7 871 mso-para-margin:0in;
<> 144:ef7eb2e8f9f7 872 mso-para-margin-bottom:.0001pt;
<> 144:ef7eb2e8f9f7 873 mso-pagination:widow-orphan;
<> 144:ef7eb2e8f9f7 874 font-size:10.0pt;
<> 144:ef7eb2e8f9f7 875 font-family:"Times New Roman","serif";}
<> 144:ef7eb2e8f9f7 876 </style>
<> 144:ef7eb2e8f9f7 877 <![endif]--><!--[if gte mso 9]><xml>
<> 144:ef7eb2e8f9f7 878 <o:shapedefaults v:ext="edit" spidmax="7170"/>
<> 144:ef7eb2e8f9f7 879 </xml><![endif]--><!--[if gte mso 9]><xml>
<> 144:ef7eb2e8f9f7 880 <o:shapelayout v:ext="edit">
<> 144:ef7eb2e8f9f7 881 <o:idmap v:ext="edit" data="1"/>
<> 144:ef7eb2e8f9f7 882 </o:shapelayout></xml><![endif]-->
<> 144:ef7eb2e8f9f7 883 <meta content="MCD Application Team" name="author"></head>
<> 144:ef7eb2e8f9f7 884 <body style="" link="blue" vlink="blue">
<> 144:ef7eb2e8f9f7 885
<> 144:ef7eb2e8f9f7 886 <div class="WordSection1">
<> 144:ef7eb2e8f9f7 887
<> 144:ef7eb2e8f9f7 888 <p class="MsoNormal"><span style="font-family: &quot;Arial&quot;,&quot;sans-serif&quot;;"><o:p>&nbsp;</o:p></span></p>
<> 144:ef7eb2e8f9f7 889
<> 144:ef7eb2e8f9f7 890 <div align="center">
<> 144:ef7eb2e8f9f7 891
<> 144:ef7eb2e8f9f7 892 <table class="MsoNormalTable" style="width: 675pt;" border="0" cellpadding="0" cellspacing="0" width="900">
<> 144:ef7eb2e8f9f7 893 <tbody><tr style="">
<> 144:ef7eb2e8f9f7 894 <td style="padding: 0in;" valign="top">
<> 144:ef7eb2e8f9f7 895 <table class="MsoNormalTable" style="width: 675pt;" border="0" cellpadding="0" cellspacing="0" width="900">
<> 144:ef7eb2e8f9f7 896 <tbody><tr style="">
<> 144:ef7eb2e8f9f7 897 <td style="padding: 0in 5.4pt;" valign="top">
<> 144:ef7eb2e8f9f7 898 <p class="MsoNormal"><span style="font-size: 8pt; font-family: &quot;Arial&quot;,&quot;sans-serif&quot;; color: blue;"><a href="../../Release_Notes.html">Back to Release page</a></span><span style="font-size: 10pt;"><o:p></o:p></span></p>
<> 144:ef7eb2e8f9f7 899 </td>
<> 144:ef7eb2e8f9f7 900 </tr>
<> 144:ef7eb2e8f9f7 901 <tr style="">
<> 144:ef7eb2e8f9f7 902 <td style="padding: 1.5pt;">
<> 144:ef7eb2e8f9f7 903 <h1 style="margin-bottom: 0.25in; text-align: center;" align="center"><span style="font-size: 20pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;; color: rgb(51, 102, 255);">Release Notes for STM32F2xx HAL Drivers</span><span style="font-size: 20pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;"><o:p></o:p></span></h1>
<> 144:ef7eb2e8f9f7 904 <p class="MsoNormal" style="text-align: center;" align="center"><span style="font-size: 10pt; font-family: &quot;Arial&quot;,&quot;sans-serif&quot;; color: black;">Copyright
AnnaBridge 167:e84263d55307 905 2017 STMicroelectronics<span style="text-decoration: underline;"></span></span></p><p class="MsoNormal" style="text-align: center;" align="center"><a href="..%5C..%5C_htmresc%5Cst_logo.png"><img style="border: 0px solid ; width: 171px; height: 126px;" alt="logo" src="../../_htmresc/st_logo.png"></a><a href="..%5C..%5C_htmresc%5Cst_logo.png"><span style="font-size: 10pt; font-family: &quot;Arial&quot;,&quot;sans-serif&quot;; color: black;"><span style="text-decoration: underline;"></span></span><span style="color: black;"><u1:p></u1:p><o:p></o:p></span></a></p>
<> 144:ef7eb2e8f9f7 906 <p class="MsoNormal" style="text-align: center;" align="center"><a href="..%5C..%5C_htmresc%5Cst_logo.png"><span style="font-size: 10pt; font-family: &quot;Arial&quot;,&quot;sans-serif&quot;; color: black;"></span></a><span style="font-size: 10pt;"><o:p></o:p></span></p>
<> 144:ef7eb2e8f9f7 907 </td>
<> 144:ef7eb2e8f9f7 908 </tr>
<> 144:ef7eb2e8f9f7 909 </tbody></table>
<> 144:ef7eb2e8f9f7 910 <p class="MsoNormal"><span style="font-family: &quot;Arial&quot;,&quot;sans-serif&quot;; display: none;"><o:p>&nbsp;</o:p></span></p>
<> 144:ef7eb2e8f9f7 911 <table class="MsoNormalTable" style="width: 675pt;" border="0" cellpadding="0" width="900">
<> 144:ef7eb2e8f9f7 912 <tbody><tr style="">
<> 144:ef7eb2e8f9f7 913 <td style="padding: 0in;" valign="top">
AnnaBridge 167:e84263d55307 914 <h2 style="background: rgb(51, 102, 255) none repeat scroll 0% 50%; -moz-background-clip: initial; -moz-background-origin: initial; -moz-background-inline-policy: initial;"><a name="History"></a><span style="font-size: 12pt; color: white;">Update History</span></h2><h3 style="background: rgb(51, 102, 255) none repeat scroll 0% 50%; -moz-background-clip: initial; -moz-background-origin: initial; -moz-background-inline-policy: initial; margin-right: 500pt; width: 197px;"><span style="font-size: 10pt; font-family: Arial; color: white;">V1.2.1 / 14-April-2017</span></h3><p class="MsoNormal" style="margin: 4.5pt 0cm 4.5pt 18pt;"><b style=""><u><span style="font-size: 10pt; font-family: Verdana; color: black;">Main
AnnaBridge 167:e84263d55307 915 Changes</span></u></b></p>
AnnaBridge 167:e84263d55307 916
AnnaBridge 167:e84263d55307 917 <ul style="margin-bottom: 0in; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; margin-top: 0cm;" type="square"><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">General updates
AnnaBridge 167:e84263d55307 918 to fix known defects and enhancements implementation</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"><span style="font-weight: bold;">HAL CONF Template </span>update</span></li><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,sans-serif;" lang="EN-US">Add support for HAL MMC driver.&nbsp;</span></li></ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"><span style="font-weight: bold;">HAL CAN </span>update</span></li><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,sans-serif;" lang="EN-US">Add
AnnaBridge 167:e84263d55307 919 management of&nbsp;overrun error.&nbsp;</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,sans-serif;" lang="EN-US">Allow
AnnaBridge 167:e84263d55307 920 possibility to receive messages from the 2 RX FIFOs in parallel via
AnnaBridge 167:e84263d55307 921 interrupt.</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,sans-serif;" lang="EN-US">Fix&nbsp;message
AnnaBridge 167:e84263d55307 922 lost issue with specific sequence of transmit requests.</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,sans-serif;" lang="EN-US">Handle
AnnaBridge 167:e84263d55307 923 transmission failure with error callback, when NART is enabled.</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,sans-serif; color: black;" lang="EN-US">Add __HAL_CAN_CANCEL_TRANSMIT() call to abort transmission when
AnnaBridge 167:e84263d55307 924 timeout is reached</span></li></ul></ul><h3 style="background: rgb(51, 102, 255) none repeat scroll 0% 50%; -moz-background-clip: initial; -moz-background-origin: initial; -moz-background-inline-policy: initial; margin-right: 500pt; width: 197px;"><span style="font-size: 10pt; font-family: Arial; color: white;">V1.2.0 / 17-March-2017</span></h3><p class="MsoNormal" style="margin: 4.5pt 0cm 4.5pt 18pt;"><b style=""><u><span style="font-size: 10pt; font-family: Verdana; color: black;">Main
AnnaBridge 167:e84263d55307 925 Changes</span></u></b></p>
AnnaBridge 167:e84263d55307 926
AnnaBridge 167:e84263d55307 927 <ul style="margin-bottom: 0in; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; margin-top: 0cm;" type="square"><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="color: rgb(0, 0, 0); font-family: Verdana; font-size: 13.3333px; font-style: normal; font-variant: normal; font-weight: bold; letter-spacing: normal; line-height: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; display: inline ! important; float: none;">Add Low Layer drivers allowing performance and footprint optimization</span></li><ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana;">Low
AnnaBridge 167:e84263d55307 928 Layer drivers APIs provide register level programming: require deep
AnnaBridge 167:e84263d55307 929 knowledge of peripherals described in STM32F2xx Reference Manuals</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="color: rgb(0, 0, 0); font-family: Verdana; font-size: 13.3333px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; display: inline ! important; float: none;">Low
AnnaBridge 167:e84263d55307 930 Layer drivers are available for: ADC,&nbsp;Cortex, CRC, DAC, DMA,&nbsp;EXTI, GPIO, I2C, IWDG, PWR, RCC, RNG, RTC, SPI, TIM,
AnnaBridge 167:e84263d55307 931 USART, WWDG peripherals and additionnal Low Level Bus, System and
AnnaBridge 167:e84263d55307 932 Utilities APIs.</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana;">Low Layer drivers APIs are implemented as static inline function in new<span class="Apple-converted-space">&nbsp;</span><span style="font-style: italic;">Inc/stm32f2xx_ll_ppp.h</span><span class="Apple-converted-space">&nbsp;</span>files for PPP peripherals, there is no configuration file and each<span class="Apple-converted-space">&nbsp;</span></span><span style="font-size: 10pt; font-family: Verdana;"><span style="font-style: italic;">stm32f2xx_ll_ppp.h</span><span class="Apple-converted-space">&nbsp;</span>file must be included in user code.</span></li></ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;">General updates to fix known defects and enhancements implementation</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;">Fix&nbsp;extra warnings with GCC compiler</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;">HAL drivers&nbsp;clean up: remove double casting 'uint32_t' and 'U'</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Add new<span class="Apple-converted-space"> </span><span style="font-weight: bold;">HAL MMC</span><span class="Apple-converted-space"></span><span class="Apple-converted-space"></span><span style="font-weight: bold;"></span><span class="Apple-converted-space">&nbsp;</span>driver</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-weight: bold;">The following changes done on the HAL drivers require an update on the application code based on older HAL versions</span></span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-weight: bold;">HAL SD</span><span class="Apple-converted-space">&nbsp;</span>update</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">Overall rework of the driver for a more efficient&nbsp;implementation</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">Modify initialization API and structures</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">Modify Read / Write sequences: separate transfer process and SD Cards state management&nbsp;</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">Adding interrupt mode for Read / Write operations</span></li></ul><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">Update the HAL_SD_IRQHandler function by optimizing the management of interrupt errors<br></span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">Refer to the following example to identify the changes: BSP example and USB_Device/MSC_Standalone application</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-weight: bold;">HAL NAND</span><span class="Apple-converted-space">&nbsp;</span>update</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Modify NAND_AddressTypeDef, NAND_DeviceConfigTypeDef and NAND_HandleTypeDef structures fields</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Add new HAL_NAND_ConfigDevice API</span></li></ul></ul><li style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"><span style="font-weight: bold;">HAL </span>update</span></li><ul><li style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-size: 10pt; font-family: Verdana,sans-serif;">Modifiy default HAL_Delay implementation to guarantee minimum delay</span></li><li style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-size: 10pt; font-family: Verdana,sans-serif;">Add HAL_GetUID API : returns the unique device identifier<br></span></li></ul><li style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"><span style="font-weight: bold;">HAL Cortex</span> update</span></li><ul><li style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Move HAL_MPU_Disable() and HAL_MPU_Enable() from stm32f2xx_hal_cortex.h to stm32f2xx_hal_cortex.c</span></li><li style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Clear the whole MPU control register in&nbsp;</span><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">HAL_MPU_Disable() API</span></li></ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"><span style="font-weight: bold;">HAL FLASH</span> update</span></li><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">IS_FLASH_ADDRESS() macro update to support OTP range</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">FLASH_Program_DoubleWord(): Replace 64-bit accesses with 2 double-words operations<br></span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-weight: bold;">HAL GPIO</span><span class="Apple-converted-space"> </span>update</span></li><ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Update IS_GPIO_PIN() macro implementation to be more safe</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-weight: bold;">HAL RCC</span><span class="Apple-converted-space"> </span>update</span></li><ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Update IS_RCC_PLLQ_VALUE() macro implementation: the minimum accepted&nbsp;value is 2 instead of 4</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,sans-serif;" lang="EN-US">Update to refer to AHBPrescTable[] and APBPrescTable[] tables defined in system_stm32f2xx.c file instead of&nbsp;</span><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,sans-serif;" lang="EN-US">APBAHBPrescTable[] table.</span></li></ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="color: rgb(0, 0, 0); font-family: Verdana,sans-serif; font-size: 13.3333px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; display: inline ! important; float: none;"><span style="font-weight: bold;">HAL DMA </span>update</span></li><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,sans-serif;" lang="EN-US">HAL_DMA_Init(): update to check compatibility between FIFO threshold level and size of the memory burst&nbsp;</span></li></ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"><span style="font-weight: bold;">HAL UART/USART/IrDA/SMARTCARD&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">(referenced as<span class="Apple-converted-space">&nbsp;</span><span style="font-style: italic;">PPP</span><span class="Apple-converted-space">&nbsp;</span>here below)<span style="font-style: italic;"></span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-style: italic;"><span class="Apple-converted-space"></span></span></span><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"><span style="font-weight: bold;">&nbsp;</span></span><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"></span></li><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><p class="MsoNormal"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-style: italic;"></span>DMA Receive process; the code
AnnaBridge 167:e84263d55307 933 has been updated to clear the PPP OVR&nbsp;flag before enabling&nbsp;DMA receive request.</span></p></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: &quot;Verdana&quot;,sans-serif; font-size: 10pt;">Add transfer abort APIs&nbsp;and associated callbacks :&nbsp;</span><span style="font-family: &quot;Verdana&quot;,sans-serif; font-size: 10pt;"></span></li><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: &quot;Verdana&quot;,sans-serif; font-size: 10pt;">HAL_PPP_Abort()</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: &quot;Verdana&quot;,sans-serif; font-size: 10pt;">HAL_</span><span style="font-family: &quot;Verdana&quot;,sans-serif; font-size: 10pt;">PPP</span><span style="font-family: &quot;Verdana&quot;,sans-serif; font-size: 10pt;">_AbortTransmit()</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: &quot;Verdana&quot;,sans-serif; font-size: 10pt;">HAL</span><span style="font-family: &quot;Verdana&quot;,sans-serif; font-size: 10pt;">_PPP</span><span style="font-family: &quot;Verdana&quot;,sans-serif; font-size: 10pt;">_AbortReceive()</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: &quot;Verdana&quot;,sans-serif; font-size: 10pt;">HAL_</span><span style="font-family: &quot;Verdana&quot;,sans-serif; font-size: 10pt;">PPP</span><span style="font-family: &quot;Verdana&quot;,sans-serif; font-size: 10pt;">_Abort_IT</span><span style="font-family: &quot;Verdana&quot;,sans-serif; font-size: 10pt;">()</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: &quot;Verdana&quot;,sans-serif; font-size: 10pt;">HAL_</span><span style="font-family: &quot;Verdana&quot;,sans-serif; font-size: 10pt;">PPP</span><span style="font-family: &quot;Verdana&quot;,sans-serif; font-size: 10pt;">_AbortTransmit_IT()</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: &quot;Verdana&quot;,sans-serif; font-size: 10pt;">HAL_</span><span style="font-family: &quot;Verdana&quot;,sans-serif; font-size: 10pt;">PPP</span><span style="font-family: &quot;Verdana&quot;,sans-serif; font-size: 10pt;">_AbortReceive_IT()</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: &quot;Verdana&quot;,sans-serif; font-size: 10pt;">HAL_</span><span style="font-family: &quot;Verdana&quot;,sans-serif; font-size: 10pt;">PPP</span><span style="font-family: &quot;Verdana&quot;,sans-serif; font-size: 10pt;">_AbortCpltCallback()</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: &quot;Verdana&quot;,sans-serif; font-size: 10pt;">HAL_</span><span style="font-family: &quot;Verdana&quot;,sans-serif; font-size: 10pt;">PPP</span><span style="font-family: &quot;Verdana&quot;,sans-serif; font-size: 10pt;">_AbortTransmitCpltCallback()</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: &quot;Verdana&quot;,sans-serif; font-size: 10pt;">HAL_PPP_AbortReceiveCpltCallback()<br></span></li></ul></ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="color: rgb(0, 0, 0); font-family: Verdana,sans-serif; font-size: 13.3333px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; display: inline ! important; float: none;"><span style="font-weight: bold;">HAL CAN </span>update</span></li><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Remove Lock mechanism from HAL_CAN_Transmit_IT() and HAL_CAN_Receive_IT() processes</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">HAL CAN driver optimization<br></span></li></ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="color: rgb(0, 0, 0); font-family: Verdana,sans-serif; font-size: 13.3333px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; display: inline ! important; float: none;"><span style="font-weight: bold;">HAL TIM </span>update</span></li><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><p class="MsoNormal"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Add __HAL_TIM_MOE_DISABLE_UNCONDITIONALLY() macro to disable Master output without check on TIM channel state.&nbsp;</span></p></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Update HAL_TIMEx_ConfigBreakDeadTime() to fix TIM BDTR register corruption.</span></li></ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="color: rgb(0, 0, 0); font-family: Verdana,sans-serif; font-size: 13.3333px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; display: inline ! important; float: none;"><span style="font-weight: bold;">HAL I2C </span>update</span></li><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,sans-serif;" lang="EN-US">Update
AnnaBridge 167:e84263d55307 934 HAL_I2C_Master_Transmit() and HAL_I2C_Slave_Transmit() to avoid sending
AnnaBridge 167:e84263d55307 935 extra bytes&nbsp;at the end of the transmit processes</span><span style="font-size: 12pt; font-family: &quot;Times New Roman&quot;,serif;" lang="EN-US"><o:p></o:p></span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,sans-serif;" lang="EN-US">Update
AnnaBridge 167:e84263d55307 936 HAL_I2C_Mem_Read() API to fix wrong check on misused parameter “Size”</span><span style="font-size: 12pt; font-family: &quot;Times New Roman&quot;,serif;" lang="EN-US"><o:p></o:p></span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,sans-serif;" lang="EN-US">Update
AnnaBridge 167:e84263d55307 937 I2C_MasterReceive_RXNE() and I2C_MasterReceive_BTF() static APIs to
AnnaBridge 167:e84263d55307 938 enhance Master sequential reception process.</span></li></ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="color: rgb(0, 0, 0); font-family: Verdana,sans-serif; font-size: 13.3333px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; display: inline ! important; float: none;"><span style="font-weight: bold;">HAL SPI </span>update</span></li><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: &quot;Verdana&quot;,sans-serif; font-size: 10pt;">Add transfer abort APIs&nbsp;and associated callbacks in interrupt mode</span></li><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: &quot;Verdana&quot;,sans-serif; font-size: 10pt;"></span><span style="font-family: Verdana; font-size: 10pt;">HAL_SPI_Abort()</span></li></ul><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: Verdana; font-size: 10pt;">HAL_SPI_Abort_IT()</span></li></ul><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: Verdana; font-size: 10pt;">HAL_SPI_AbortCpltCallback()</span></li></ul></ul></ul>
AnnaBridge 167:e84263d55307 939 <ul style="margin-bottom: 0in; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; margin-top: 0cm;" type="square"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-weight: bold;">HAL USB</span><span class="Apple-converted-space"> <span style="font-weight: bold;">PCD</span> </span>update</span></li><ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Flush all TX FIFOs on USB Reset</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Remove Lock mechanism from HAL_PCD_EP_Transmit() and HAL_PCD_EP_Receive() API's</span></li></ul></ul><span style="font-size: 10pt; font-family: 'Segoe UI'; color: rgb(0, 0, 0); direction: ltr;" dir="ltr"></span><ul style="margin-bottom: 0in; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; margin-top: 0cm;" type="square"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-weight: bold;">LL USB</span><span class="Apple-converted-space"> </span>update</span></li><ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Enable DMA Burst mode for USB OTG HS</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="color: rgb(0, 0, 0); font-family: Verdana,sans-serif; font-size: 13.3333px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; display: inline ! important; float: none;">Fix SD card detection issue</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-weight: bold;">LL SDMMC</span><span class="Apple-converted-space">&nbsp;</span>update</span></li><ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Add new SDMMC_CmdSDEraseStartAdd, SDMMC_CmdSDEraseEndAdd, SDMMC_CmdOpCondition and SDMMC_CmdSwitch functions</span><br><span style="font-size: 10pt; font-family: Arial; color: white;"></span></li></ul></ul><h3 style="background: rgb(51, 102, 255) none repeat scroll 0% 50%; -moz-background-clip: initial; -moz-background-origin: initial; -moz-background-inline-policy: initial; margin-right: 500pt; width: 180px;"><span style="font-size: 10pt; font-family: Arial; color: white;">V1.1.3 / 29-June-2016</span></h3>
<> 144:ef7eb2e8f9f7 940
<> 144:ef7eb2e8f9f7 941 <p class="MsoNormal" style="margin: 4.5pt 0cm 4.5pt 18pt;"><b><u><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;; color: black;">Main Changes</span></u></b><span style="font-size: 12pt; font-family: &quot;Times New Roman&quot;,&quot;serif&quot;;"><o:p></o:p></span></p>
<> 144:ef7eb2e8f9f7 942
<> 144:ef7eb2e8f9f7 943
<> 144:ef7eb2e8f9f7 944
<> 144:ef7eb2e8f9f7 945
<> 144:ef7eb2e8f9f7 946
<> 144:ef7eb2e8f9f7 947
<> 144:ef7eb2e8f9f7 948 <ul style="margin-bottom: 0in; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; margin-top: 0cm;" type="square"><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;">General updates to fix known defects and enhancements implementation</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;">Enhance HAL delay and time base implementation</span><span style="font-size: 10pt; font-family: Verdana,sans-serif;">:</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"></span><span style="font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;; font-size: 10pt;">Add
<> 144:ef7eb2e8f9f7 949 new drivers stm32f2xx_hal_timebase_tim_template.c,
<> 144:ef7eb2e8f9f7 950 stm32f2xx_hal_timebase_rtc_alarm_template.c and
<> 144:ef7eb2e8f9f7 951 stm32f2xx_hal_timebase_rtc_wakeup_template.c which override the native
<> 144:ef7eb2e8f9f7 952 HAL time base functions (defined as weak) to either use the TIM or the
<> 144:ef7eb2e8f9f7 953 RTC as time base tick source. For more details about the usage of these
<> 144:ef7eb2e8f9f7 954 drivers, please refer to HAL\HAL_TimeBase examples&nbsp;</span><span style="font-family: Verdana,sans-serif; font-style: normal; font-variant: normal; font-weight: normal; font-size: 13.33px; line-height: normal; font-size-adjust: none; font-stretch: normal; text-align: left; color: rgb(0, 0, 0); text-transform: none; text-indent: 0px; letter-spacing: normal; word-spacing: 0px; float: none; display: inline ! important; white-space: normal; widows: 1;">and FreeRTOS-based applications</span><span style="color: rgb(0, 0, 0); font-family: Verdana,sans-serif; font-size: 13.3333px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; float: none; display: inline ! important;"></span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-weight: bold;">The following changes done on the HAL drivers require an update on the application code based on HAL V1.1.2</span></span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-style: italic;">HAL UART, USART, IRDA, SMARTCARD, SPI, I2C<span class="Apple-converted-space">&nbsp;</span></span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-style: italic;"></span>(referenced as<span class="Apple-converted-space">&nbsp;</span><span style="font-style: italic;">PPP</span><span class="Apple-converted-space">&nbsp;</span>here below)<span style="font-style: italic;"></span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-style: italic;"><span class="Apple-converted-space">&nbsp;</span></span>drivers</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"></span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Add PPP error management during DMA process. This requires the following updates on&nbsp;</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">user application:</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Configure and enable the PPP IRQ in HAL_PPP_MspInit() function<br></span></li></ul><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">In<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">stm32f2xx_it.c file,<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">PPP_IRQHandler() function:<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">add a call to HAL_PPP_IRQHandler() function</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Add and customize the Error Callback API: HAL_PPP_ErrorCallback()<br></span></li></ul></ul></ul><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-style: italic;">HAL I2C</span><span style="font-style: italic;"></span></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;"> driver</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">:</span><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Update to avoid waiting on<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">STOPF/BTF/AF flag under DMA ISR by using the<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">PPP end of transfer interrupt in the</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">DMA transfer process.</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span class="Apple-converted-space">&nbsp;</span>This requires the following updates on&nbsp;</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">user application</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">:</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Configure and enable the PPP IRQ in HAL_PPP_MspInit() function<br></span></li></ul></ul><ul style="margin-bottom: 0in;"><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">In<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">stm32f2xx_it.c file,<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">PPP_IRQHandler() function:<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">add a call to HAL_PPP_IRQHandler() function</span></li></ul></ul></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;"></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">I2C
<> 144:ef7eb2e8f9f7 955 transfer processes IT update: NACK during addressing phase is managed
<> 144:ef7eb2e8f9f7 956 through I2C Error interrupt&nbsp;instead of HAL&nbsp;state</span></li></ul></ul><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-style: italic;">HAL IWDG</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-style: italic;"><span class="Apple-converted-space">&nbsp;</span></span>driver: rework overall driver for better implementation</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Remove&nbsp;</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">HAL_IWDG_Start(),<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">HAL_IWDG_MspInit() and<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">HAL_IWDG_GetState()&nbsp;</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">APIs</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-style: italic;">HAL WWDG</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-style: italic;"><span class="Apple-converted-space">&nbsp;</span></span>driver: rework overall driver for better implementation</span><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">Remove HAL_WWDG_Start(),<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">HAL_WWDG_Start_IT(),</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US"><span class="Apple-converted-space">&nbsp;</span>HAL_WWDG_MspDeInit() and<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">HAL_WWDG_GetState() APIs&nbsp;</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US"><span style="color: black;" class="MsoNormal">Update the</span>&nbsp;</span><span class="MsoNormal" style="font-family: Calibri,sans-serif; font-size: 11pt; color: black;" lang="EN-US"></span><span class="MsoNormal" style="font-family: Verdana,sans-serif; font-size: 10pt; color: black;" lang="EN-US"></span><span class="MsoNormal" style="font-family: Calibri,sans-serif; font-size: 11pt; color: black;" lang="EN-US">HAL_WWDG_Refresh(WWDG_HandleTypeDef
<> 144:ef7eb2e8f9f7 957 *hwwdg, uint32_t counter) &nbsp;function and API &nbsp;by removing the
<> 144:ef7eb2e8f9f7 958 &nbsp;"counter" parameter</span></li></ul></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><b><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">HAL Generic<span class="Apple-converted-space">&nbsp;</span></span></b><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">update<o:p></o:p></span><br><span style="font-family: Verdana,sans-serif; font-size: 10pt; font-weight: normal;"></span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">stm32f2xx_hal_conf_template.h</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"></span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Optimize HSE Startup Timeout value from 5000ms to 100 ms</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Add new define LSE_STARTUP_TIMEOUT</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Add new define USE_SPI_CRC for code cleanup when the CRC calculation is disabled.</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Update HAL drivers to support MISRA C 2004 rule 10.6</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;">Add new template&nbsp;driver to configure timebase<span class="Apple-converted-space">&nbsp;</span></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;">using TIMER :</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;">s<span style="font-size: 10pt; font-family: Verdana,sans-serif;">tm32f2xx_hal_timebase_tim_template.c</span></li></ul></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><b><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">HAL CAN<span class="Apple-converted-space">&nbsp;</span></span></b><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">update<o:p></o:p></span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Update&nbsp;</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">HAL_CAN_Transmit() and HAL_CAN_Transmit_IT() functions to&nbsp;</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">unlock process when all Mailboxes are busy</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><b><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">HAL DCMI<span class="Apple-converted-space">&nbsp;</span></span></b><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">update<o:p></o:p></span><br><span style="font-family: Verdana,sans-serif; font-size: 10pt; font-weight: normal;"></span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Rename DCMI_DMAConvCplt to DCMI_DMAXferCplt</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Update<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">HAL_DCMI_Start_DMA() function to&nbsp;</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Enable the DCMI peripheral</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Add new timeout implementation based on cpu cycles for DCMI stop</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Add HAL_DCMI_Suspend() function to suspend DCMI capture</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Add HAL_DCMI_Resume() function to resume capture after DCMI suspend</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Update lock mechanism for DCMI process</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Update HAL_DCMI_IRQHandler() function to</span></li><ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Add error management in case DMA errors through XferAbortCallback() and HAL_DMA_Abort_IT()</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Optimize code by using direct register read</span></li></ul></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><b><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">HAL<span class="Apple-converted-space"> DMA</span><span style="font-style: italic;"></span></span></b><span style="font-size: 10pt; font-family: Verdana,sans-serif;"><span style="font-style: italic;"><span class="Apple-converted-space">&nbsp;</span></span></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">update</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Add
<> 144:ef7eb2e8f9f7 959 new APIs HAL_DMA_RegisterCallback() and HAL_DMA_UnRegisterCallback to
<> 144:ef7eb2e8f9f7 960 register/unregister the different callbacks identified by the enum
<> 144:ef7eb2e8f9f7 961 typedef HAL_DMA_CallbackIDTypeDef</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Add new API HAL_DMA_Abort_IT() to abort DMA transfer under interrupt context<br></span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">The new registered Abort callback is called when DMA transfer abortion is completed</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Add the check of compatibility between FIFO threshold level and size of the memory burst in the HAL_DMA_Init() API</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Add new Error Codes: HAL_DMA_ERROR_PARAM, HAL_DMA_ERROR_NO_XFER and HAL_DMA_ERROR_NOT_SUPPORTED</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Remove all DMA states related to MEM0/MEM1 in HAL_DMA_StateTypeDef</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><b><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">HAL ETH<span class="Apple-converted-space">&nbsp;</span></span></b><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">update</span></li><ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Removal of ETH MAC debug register defines</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-weight: bold;">HAL HCD</span><span class="Apple-converted-space">&nbsp;</span>update</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Update HCD_Port_IRQHandler() to unmask disconnect IT only when the port is disable</span></li></ul><li><b><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">HAL I2C&nbsp;</span></b><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">update</span></li><ul class="MsoNormal" style="margin-bottom: 0in;"><li><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">Add support of I2C repeated start feature:</span></li></ul><ul class="MsoNormal" style="margin-bottom: 0in;"><ul style="margin-bottom: 0in;"><li><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">With the following new API's<br></span></li></ul></ul><ul class="MsoNormal" style="margin-bottom: 0in;"><ul style="margin-bottom: 0in;"><ul style="margin-bottom: 0in;"><li><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">HAL_I2C_Master_Sequential_Transmit_IT()</span></li><li><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">HAL_I2C_Master_Sequential_Receive_IT()</span></li><li><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US"></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">HAL_I2C_Master_Abort_IT()</span></li><li><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US"></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">HAL_I2C_Slave_Sequential_Transmit_IT()</span></li><li><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US"></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">HAL_I2C_Slave_Sequential_Receive_IT()</span></li><li><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US"></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">HAL_I<span class="MsoNormal">2C_Enable</span>Listen_IT()</span></li><li><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US"></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">HAL_I2C_DisableListen_IT()</span></li></ul></ul><ul style="margin-bottom: 0in;"><li><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,sans-serif;" lang="EN-US">Add new user callbacks</span><span class="MsoNormal">:</span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US"><br></span></li></ul><ul style="margin-bottom: 0in;"><ul style="margin-bottom: 0in;"><li><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US"></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">HAL_I2C_ListenCpltCallback()</span></li></ul><ul style="margin-bottom: 0in;"><li><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">HAL_I2C_AddrCallback()</span></li></ul></ul><li><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">Update to generate STOP condition when a acknowledge failure error is detected</span></li><li><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Several update on HAL I2C driver to implement the new I2C state machine:&nbsp;</span></li><ul style="margin-bottom: 0in;"><li><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">Add new API to get the I2C mode: HAL_I2C_GetMode()</span></li><li><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Update I2C process to manage the new I2C states.</span></li></ul><li><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">Fix wrong behaviour in single byte transmission&nbsp;</span></li><li><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">Update I2C_WaitOnFlagUntilTimeout()&nbsp;to manage the NACK feature.</span></li><li><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">Update&nbsp;&nbsp;I2C transmission process to support the case data size equal 0</span></li></ul><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">Update<span class="Apple-converted-space">&nbsp;</span></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">Polling management:</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">The Timeout value must be estimated for the overall process duration: the Timeout measurement is cumulative<br></span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Add the management of Abort service:&nbsp;Abort DMA transfer through interrupt</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">In the case of Master Abort IT transfer usage:</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Add&nbsp;new user HAL_I2C_AbortCpltCallback() to inform user of the end of abort process</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">A new abort state is defined in the<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">HAL_I2C_StateTypeDef<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">structure</span></li></ul></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Add
<> 144:ef7eb2e8f9f7 962 the management of I2C peripheral errors, ACK failure and STOP condition
<> 144:ef7eb2e8f9f7 963 detection during DMA process. This requires the following updates on
<> 144:ef7eb2e8f9f7 964 user application:</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Configure and enable the I2C IRQ in HAL_I2C_MspInit() function</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">In stm32f2xx_it.c file, I2C_IRQHandler() function: add a call to HAL_I2C_IRQHandler() function</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Add and customize the Error Callback API: HAL_I2C_ErrorCallback()</span></li></ul></ul><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">NACK error during addressing phase is returned through interrupt instead of previously through I2C transfer API's</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">I2C addressing phase is updated to be managed using interrupt instead of&nbsp;polling (Only for HAL I2C driver)</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Add new static functions to manage I2C SB, ADDR and ADD10 flags</span></li></ul></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><b><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">HAL IRDA<span class="Apple-converted-space">&nbsp;</span></span></b><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">update<b><o:p></o:p></b></span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Several update on HAL IRDA driver to implement the new UART state machine:&nbsp;</span></li></ul><ul style="margin-bottom: 0in;"><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Add new field in IRDA_HandleTypeDef structure:<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">"rxState",<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">IRDA</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span class="Apple-converted-space">&nbsp;</span>state information related to Rx Operations</span></li></ul></ul><ul style="margin-bottom: 0in;"><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Rename "state" field in UART_HandleTypeDef structure by "gstate":<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">IRDA</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span class="Apple-converted-space">&nbsp;</span>state information related to global Handle management and Tx Operations</span></li></ul></ul><ul style="margin-bottom: 0in;"><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Update IRDA process to manage the new UART states.</span></li></ul></ul><ul style="margin-bottom: 0in;"><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US">Update __HAL_IRDA_RESET_HANDLE_STATE() macro to handle the new IRDA state parameters (gState, rxState)</span></li></ul></ul><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Removal of IRDA_TIMEOUT_VALUE define</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Update IRDA_BRR() Macro to fix wrong baudrate calculation</span></li></ul><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">Update Polling management:</span></li></ul><ul style="margin-bottom: 0in;"><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">The user Timeout value&nbsp;must be estimated for the overall process duration: the Timeout measurement is cumulative</span></li></ul></ul><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Update DMA process:</span></li></ul><ul style="margin-bottom: 0in;"><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Update the m</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">anagement of IRDA peripheral errors during DMA process. This requires the following updates in user application:</span></li></ul><ul style="margin-bottom: 0in;"><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">Configure and enable the IRDA IRQ in HAL_IRDA_MspInit() function</span></li></ul><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">In stm32f2xx_it.c file, IRDA_IRQHandler() function: add a call to HAL_IRDA_IRQHandler() function</span></li></ul><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">Add and customize the Error Callback API: HAL_IRDA_ErrorCallback()</span></li></ul></ul></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><b><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">HAL IWDG</span></b><span style="font-size: 10pt; font-family: Verdana,sans-serif;"><span style="font-style: italic;"></span></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;"><span style="font-style: italic;"><span class="Apple-converted-space">&nbsp;</span></span></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">update</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">Overall rework of the driver for a more efficient&nbsp;implementation</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">Remove the following APIs:</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">HAL_IWDG_Start()</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">HAL_IWDG_MspInit()</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">HAL_IWDG_GetState()</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">Update implementation:</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">HAL_IWDG_Init(): this function insures the configuration and the start of the IWDG counter</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">HAL_IWDG_Refresh(): this function insures the reload of the IWDG counter</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">Refer to the following example to identify the changes: IWDG_Example</span></li></ul></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-weight: bold;">HAL NOR</span><span class="Apple-converted-space">&nbsp;</span>update</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">Update NOR_ADDR_SHIFT macro implementation</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-weight: bold;">HAL PCD</span><span class="Apple-converted-space">&nbsp;</span>update</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Update HAL_PCD_IRQHandler() to get HCLK frequency before setting TRDT value</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><b><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">HAL&nbsp; RCC<span class="Apple-converted-space">&nbsp;</span></span></b><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">update</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;">Add new default define value for HSI calibration "</span><span style="font-size: 10pt; font-family: Verdana,sans-serif;">RCC_HSICALIBRATION_DEFAULT"</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;">Optimize Internal oscillators and PLL startup timeout&nbsp;</span></li><li><span style="font-size: 10pt; font-family: Verdana,sans-serif;">Update
<> 144:ef7eb2e8f9f7 965 to avoid the disable for HSE/LSE oscillators before setting the new RCC
<> 144:ef7eb2e8f9f7 966 HSE/LSE configuration and add the following notes in
<> 144:ef7eb2e8f9f7 967 HAL_RCC_OscConfig() API description:</span></li></ul></ul><span style="color: rgb(0, 0, 0); font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; font-size: 10pt; font-family: Verdana,sans-serif;"></span><span style="color: rgb(0, 0, 0); font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; font-size: 10pt; font-family: Verdana,sans-serif;"></span><span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; display: inline ! important; float: none;"></span><span style="color: rgb(0, 0, 0); font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; font-size: 10pt; font-family: Verdana,sans-serif;"></span><span style="color: rgb(0, 0, 0); font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; font-size: 10pt; font-family: Verdana,sans-serif;"><span></span><o:p></o:p></span><span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; display: inline ! important; float: none;">&nbsp;</span><span style="color: rgb(0, 0, 0); font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">&nbsp;&nbsp;&nbsp;
<> 144:ef7eb2e8f9f7 968 &nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
<> 144:ef7eb2e8f9f7 969 &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;* @note&nbsp;&nbsp;
<> 144:ef7eb2e8f9f7 970 Transitions LSE Bypass to LSE On and LSE On to LSE Bypass are not<o:p></o:p></span><span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; display: inline ! important; float: none;"><span class="Apple-converted-space">&nbsp;</span></span><br style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px;"><span style="color: rgb(0, 0, 0); font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">&nbsp;&nbsp;&nbsp;
<> 144:ef7eb2e8f9f7 971 &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
<> 144:ef7eb2e8f9f7 972 &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;
<> 144:ef7eb2e8f9f7 973 *&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp; &nbsp;
<> 144:ef7eb2e8f9f7 974 supported by this API. User should request a transition to LSE Off<o:p></o:p></span><span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; display: inline ! important; float: none;"><span class="Apple-converted-space">&nbsp;</span></span><br style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px;"><span style="color: rgb(0, 0, 0); font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">&nbsp;&nbsp;&nbsp;
<> 144:ef7eb2e8f9f7 975 &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
<> 144:ef7eb2e8f9f7 976 &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;
<> 144:ef7eb2e8f9f7 977 *&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp; &nbsp; first
<> 144:ef7eb2e8f9f7 978 and then LSE On or LSE Bypass.<o:p></o:p></span><span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; display: inline ! important; float: none;"><span class="Apple-converted-space">&nbsp;</span></span><br style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px;"><span style="color: rgb(0, 0, 0); font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">&nbsp;&nbsp;&nbsp;
<> 144:ef7eb2e8f9f7 979 &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
<> 144:ef7eb2e8f9f7 980 &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp; *
<> 144:ef7eb2e8f9f7 981 @note&nbsp;&nbsp; Transition HSE Bypass to HSE On and HSE On to HSE
<> 144:ef7eb2e8f9f7 982 Bypass are not<o:p></o:p></span><span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; display: inline ! important; float: none;"><span class="Apple-converted-space">&nbsp;</span></span><br style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px;"><span style="color: rgb(0, 0, 0); font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">&nbsp;&nbsp;&nbsp;
<> 144:ef7eb2e8f9f7 983 &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
<> 144:ef7eb2e8f9f7 984 &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;
<> 144:ef7eb2e8f9f7 985 *&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp; &nbsp;
<> 144:ef7eb2e8f9f7 986 supported by this API. User should request a transition to HSE Off<o:p></o:p></span><span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; display: inline ! important; float: none;"><span class="Apple-converted-space">&nbsp;</span></span><br style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px;"><span style="color: rgb(0, 0, 0); font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; font-size: 10pt; font-family: Verdana,sans-serif;">&nbsp;&nbsp;&nbsp;
<> 144:ef7eb2e8f9f7 987 &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
<> 144:ef7eb2e8f9f7 988 &nbsp;&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;
<> 144:ef7eb2e8f9f7 989 *&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp; &nbsp; first
<> 144:ef7eb2e8f9f7 990 and then HSE On or HSE Bypass.<o:p></o:p></span><span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; display: inline ! important; float: none;"></span><ul style="margin-bottom: 0in; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; list-style-type: square;"><ul style="margin-bottom: 0in;"><li><span style="font-size: 10pt; font-family: Verdana,sans-serif;"><span></span>Optimize the&nbsp;HAL_RCC_ClockConfig() API implementation</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Update HAL_RCC_ClockConfig() function to adjust the SystemCoreClock</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">HAL_RCCEx_PeriphCLKConfig() API: update to fix the RTC clock configuration issue</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-weight: bold;">HAL RTC<span class="Apple-converted-space">&nbsp;</span></span>update&nbsp;</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Add new timeout implementation based on cpu cycles for&nbsp;ALRAWF,&nbsp;ALRBWF and WUTWF flags</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><b><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">HAL SMARTCARD<span class="Apple-converted-space">&nbsp;</span></span></b><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">update<b><o:p></o:p></b></span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Several update on HAL SMARTCARD driver to implement the new UART state machine:&nbsp;</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Add new field in&nbsp;</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">SMARTCARD</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">_HandleTypeDef structure:<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">"rxState",<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">SMARTCARD</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">state information related to Rx Operations</span></li></ul><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Rename "state" field in UART_HandleTypeDef structure by "gstate":<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">SMARTCARD</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">state information related to global Handle management and Tx Operations</span></li></ul><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Update&nbsp;</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">SMARTCARD</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span class="Apple-converted-space">&nbsp;</span>process to manage the new UART states.</span></li></ul><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US">Update __HAL_</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">SMARTCARD</span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US">_RESET_HANDLE_STATE() macro to handle the new&nbsp;</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">SMARTCARD</span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US"><span class="Apple-converted-space">&nbsp;</span>state parameters (gState, rxState)</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">Update SMARTCARD_BRR() macro to fix wrong baudrate calculation</span></li></ul><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">Update Polling management:</span></li></ul><ul style="margin-bottom: 0in;"><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">The user Timeout value&nbsp;must be estimated for the overall process duration: the Timeout measurement is cumulative</span></li></ul></ul><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Update DMA process:</span></li></ul><ul style="margin-bottom: 0in;"><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Update the m</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">anagement of SMARTCARD peripheral errors during DMA process. This requires the following updates in user application:</span></li></ul><ul style="margin-bottom: 0in;"><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">Configure and enable the SMARTCARD IRQ in HAL_SMARTCARD_MspInit() function</span></li></ul><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">In stm32f2xx_it.c file, SMARTCARD_IRQHandler() function: add a call to HAL_SMARTCARD_IRQHandler() function</span></li></ul><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">Add and customize the Error Callback API: HAL_SMARTCARD_ErrorCallback()</span></li></ul></ul></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><b><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">HAL SPI<span class="Apple-converted-space"> </span></span></b><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">update<b><o:p></o:p></b></span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: &quot;Verdana&quot;,sans-serif; font-size: 10pt;" lang="EN-US">Major Update to improve performance in polling/interrupt mode to reach max frequency:</span></li><ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="color: rgb(0, 0, 0); font-family: Verdana,sans-serif; font-size: 13.3333px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; display: inline ! important; float: none;">Polling mode:</span></li><ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="color: rgb(0, 0, 0); font-family: Verdana,sans-serif; font-size: 13.3333px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; display: inline ! important; float: none;">R</span><span style="color: rgb(0, 0, 0); font-family: Verdana,sans-serif; font-size: 13.3333px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; display: inline ! important; float: none;">eplace use of SPI_WaitOnFlagUnitTimeout() funnction by "if" statement to check on RXNE/TXE flage while transferring data</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="color: rgb(0, 0, 0); font-family: Verdana,sans-serif; font-size: 13.3333px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; display: inline ! important; float: none;">U</span><span style="color: rgb(0, 0, 0); font-family: Verdana,sans-serif; font-size: 13.3333px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; display: inline ! important; float: none;">se API data pointer instead of SPI handle data pointer</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="color: rgb(0, 0, 0); font-family: Verdana,sans-serif; font-size: 13.3333px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; display: inline ! important; float: none;"></span><span style="color: rgb(0, 0, 0); font-family: Verdana,sans-serif; font-size: 13.3333px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; display: inline ! important; float: none;">Use a Goto implementation instead of "if..else" statements</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="color: rgb(0, 0, 0); font-family: Verdana,sans-serif; font-size: 13.3333px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; display: inline ! important; float: none;">Interrupt mode:</span></li></ul><ul><ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="color: rgb(0, 0, 0); font-family: Verdana,sans-serif; font-size: 13.3333px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; display: inline ! important; float: none;">Minimize access on SPI registers</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="color: rgb(0, 0, 0); font-family: Verdana,sans-serif; font-size: 13.3333px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; display: inline ! important; float: none;"></span>&nbsp;<span style="color: rgb(0, 0, 0); font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">Split the SPI modes into dedicated static functions to minimize<span class="Apple-converted-space">&nbsp;</span></span><span style="color: rgb(0, 0, 0); font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">checking statements under HAL_IRQHandler():</span></li><ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="color: rgb(0, 0, 0); font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">1</span><span style="color: rgb(0, 0, 0); font-family: Verdana,sans-serif; font-size: 13.3333px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; display: inline ! important; float: none;">lines/2lines modes</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="color: rgb(0, 0, 0); font-family: Verdana,sans-serif; font-size: 13.3333px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; display: inline ! important; float: none;">8</span><span style="color: rgb(0, 0, 0); font-family: Verdana,sans-serif; font-size: 13.3333px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; display: inline ! important; float: none;"><span class="Apple-converted-space"> </span>bit/ 16 bits data formats</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="color: rgb(0, 0, 0); font-family: Verdana,sans-serif; font-size: 13.3333px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; display: inline ! important; float: none;">CRC calculation enabled/disabled</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,sans-serif; color: black;" lang="EN-US">Remove waiting loop under ISR when closing
<> 144:ef7eb2e8f9f7 991 &nbsp;the communication</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,sans-serif; color: black;" lang="EN-US">All modes</span></li></ul><ul><ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,sans-serif; color: black;" lang="EN-US">A</span><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,sans-serif; color: black;" lang="EN-US">dding switch USE_SPI_CRC to minimize number of
<> 144:ef7eb2e8f9f7 992 statements when CRC calculation is disabled</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,sans-serif; color: black;" lang="EN-US">U</span><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,sans-serif; color: black;" lang="EN-US">pdate Timeout management to check on global
<> 144:ef7eb2e8f9f7 993 process</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,sans-serif; color: black;" lang="EN-US">U</span><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,sans-serif; color: black;" lang="EN-US">pdate Error code management in all processes</span></li></ul></ul></ul><ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Update DMA process:<o:p></o:p></span><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Add the management of SPI peripheral errors during DMA process. This requires the following updates in the user application:</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Configure and enable the SPI IRQ in HAL_SPI_MspInit() function</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">In stm32f2xx_it.c file, SPI_IRQHandler() function: add a call to HAL_SPI_IRQHandler() function</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Add and customize the Error Callback API: HAL_SPI_ErrorCallback()</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Refer to the following example which describe the changes: SPI_FullDuplex_ComDMA</span></li></ul></ul></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><b><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">HAL UART<span class="Apple-converted-space">&nbsp;</span></span></b><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">update<b><o:p></o:p></b></span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Several update on HAL UART driver to implement the new UART state machine:&nbsp;</span></li></ul><ul style="margin-bottom: 0in;"><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Add new field in UART_HandleTypeDef structure:<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">"rxState",<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">UART</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span class="Apple-converted-space">&nbsp;</span>state information related to Rx Operations</span></li></ul><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Rename "state" field in UART_HandleTypeDef structure by "gstate":<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">UART</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span class="Apple-converted-space">&nbsp;</span>state information related to global Handle management and Tx Operations</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Update UART process to manage the new UART states.</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US">Update __HAL_UART_RESET_HANDLE_STATE() macro to handle the new UART state parameters (gState, rxState)</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US">Update UART_BRR_SAMPLING16() and UART_BRR_SAMPLING8() Macros to fix wrong baudrate calculation.</span></li></ul><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">Update Polling management:</span></li></ul><ul style="margin-bottom: 0in;"><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">The user Timeout value&nbsp;must be estimated for the overall process duration: the Timeout measurement is cumulative</span></li></ul></ul><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Update DMA process:</span></li></ul><ul style="margin-bottom: 0in;"><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Update the m</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">anagement of UART peripheral errors during DMA process. This requires the following updates in user application:</span></li></ul><ul style="margin-bottom: 0in;"><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">Configure and enable the UART IRQ in HAL_UART_MspInit() function</span></li></ul><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">In stm32f2xx_it.c file, UART_IRQHandler() function: add a call to HAL_UART_IRQHandler() function</span></li></ul><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">Add and customize the Error Callback API: HAL_UART_ErrorCallback()</span></li></ul></ul></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><b><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">HAL USART<span class="Apple-converted-space">&nbsp;</span></span></b><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">update</span></li><ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">Update Polling management:</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">The user Timeout value&nbsp;must be estimated for the overall process duration: the Timeout measurement is cumulative</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Update DMA process:</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Update the m</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">anagement of USART peripheral errors during DMA process. This requires the following updates in user application:</span></li></ul><ul style="margin-bottom: 0in;"><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">Configure and enable the USART IRQ in HAL_USART_MspInit() function</span></li></ul><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">In stm32f2xx_it.c file, USART_IRQHandler() function: add a call to HAL_USART_IRQHandler() function</span></li></ul><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">Add and customize the Error Callback API: HAL_USART_ErrorCallback()</span></li></ul></ul></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-weight: bold;">HAL WWDG<span class="Apple-converted-space">&nbsp;</span></span>update&nbsp;</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Overall rework of the driver for more efficient implementation</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Remove the following APIs:</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">HAL_WWDG_Start()</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">HAL_WWDG_Start_IT()</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">HAL_WWDG_MspDeInit()</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">HAL_WWDG_GetState()</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Update implementation:</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">HAL_WWDG_Init()</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">A&nbsp;new parameter in the Init structure:&nbsp;EWIMode</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">HAL_WWDG_MspInit()</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">HAL_WWDG_Refresh()&nbsp;</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">This function insures the reload of the counter</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">The "counter" parameter has been removed</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">HAL_WWDG_IRQHandler()</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">HAL_WWDG_EarlyWakeupCallback() is the new prototype of HAL_WWDG_WakeUpCallback()</span></li></ul></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Refer to the following example to identify the changes: WWDG_Example</span></li></ul></ul><h3 style="background: rgb(51, 102, 255) none repeat scroll 0% 50%; -moz-background-clip: initial; -moz-background-origin: initial; -moz-background-inline-policy: initial; margin-right: 500pt; width: 180px;"><span style="font-size: 10pt; font-family: Arial; color: white;">V1.1.2 / 11-December-2015</span></h3>
<> 144:ef7eb2e8f9f7 994 <p class="MsoNormal" style="margin: 4.5pt 0cm 4.5pt 18pt;"><b style=""><u><span style="font-size: 10pt; font-family: Verdana; color: black;">Main
<> 144:ef7eb2e8f9f7 995 Changes</span></u></b></p><ul style="margin-top: 0cm;" type="square"><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"><span style="font-weight: bold;">HAL RCC </span></span><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt; font-weight: normal;">update</span></li><ul><li style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"></span><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Fix</span><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;" lang="EN-US">
<> 144:ef7eb2e8f9f7 996 compilation errors with the&nbsp; __HAL_RCC_DAC_IS_CLK_DISABLED(),
<> 144:ef7eb2e8f9f7 997 __HAL_RCC_CRYP_IS_CLK_DISABLED() and __HAL_RCC_HASH_IS_CLK_DISABLED()
<> 144:ef7eb2e8f9f7 998 macros</span></li></ul><li style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"><span style="font-weight: bold;">HAL ETH</span> update&nbsp;</span></li><ul><li style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Update HAL_ETH_Init() function to add timeout on the Software reset management</span></li></ul></ul><h3 style="background: rgb(51, 102, 255) none repeat scroll 0% 50%; -moz-background-clip: initial; -moz-background-origin: initial; -moz-background-inline-policy: initial; margin-right: 500pt; width: 180px;"><span style="font-size: 10pt; font-family: Arial; color: white;">V1.1.1 / 20-November-2015</span></h3><p class="MsoNormal" style="margin: 4.5pt 0cm 4.5pt 18pt;"><b><u><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;; color: black;">Main Changes</span></u></b><span style="font-size: 12pt; font-family: &quot;Times New Roman&quot;,&quot;serif&quot;;"><o:p></o:p></span></p>
<> 144:ef7eb2e8f9f7 999
<> 144:ef7eb2e8f9f7 1000
<> 144:ef7eb2e8f9f7 1001
<> 144:ef7eb2e8f9f7 1002
<> 144:ef7eb2e8f9f7 1003
<> 144:ef7eb2e8f9f7 1004
<> 144:ef7eb2e8f9f7 1005 <ul style="margin-bottom: 0in; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; margin-top: 0cm;" type="square"><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;">General updates to fix known defects and enhancements implementation</span></li><li style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-size: 10pt; font-family: Verdana,sans-serif;"><span style="font-weight: bold;">One change done on the HAL CRYP requires an update on the application code based on HAL V1.1.0</span></span></li><ul><li style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Update HAL_CRYP_DESECB_Decrypt() API to&nbsp;invert pPlainData and pCypherData parameters</span></li></ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"><span style="font-weight: bold;">HAL generic</span> update</span></li><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Update
<> 144:ef7eb2e8f9f7 1006 HAL weak empty callbacks to prevent unused argument compilation
<> 144:ef7eb2e8f9f7 1007 warnings with some compilers by calling the following line:</span></li><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">UNUSED(hppp);</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">HSE_STARTUP_TIMEOUT</span><span style="font-size: 10pt; font-family: Verdana,sans-serif;"><span style="font-style: italic;"></span><span class="Apple-converted-space">&nbsp;</span>constant has been corrected in<span class="Apple-converted-space">&nbsp;</span></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;">stm32f2xx_hal_conf_template.h file, its value changed<span class="Apple-converted-space">&nbsp;</span></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;">from 5000 to 100.&nbsp;</span></li></ul></ul>
<> 144:ef7eb2e8f9f7 1008 <ul style="margin-bottom: 0in; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; margin-top: 0cm;" type="square"><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"><span style="font-weight: bold;">HAL CORTEX </span></span><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">update</span></li><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Remove duplication for __HAL_CORTEX_SYSTICKCLK_CONFIG() macro</span></li></ul></ul><ul style="margin-bottom: 0in; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; margin-top: 0cm;" type="square"><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"><span style="font-weight: bold;">HAL HASH </span></span><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">update</span></li><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Rename HAL_HASH_STATETypeDef to HAL_HASH_StateTypeDef</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Rename HAL_HASH_PhaseTypeDef to HAL_HASH_PhaseTypeDef<br></span></li></ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"><span style="font-weight: bold;">HAL RCC </span></span><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">update</span></li><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;" lang="EN-US">Add new macros __HAL_RCC_<span style="font-style: italic;">PPP</span>_IS_CLK_ENABLED() to check on Clock enable/disable status</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;" lang="EN-US">Update __HAL_RCC_USB_OTG_FS_CLK_DISABLE() macro to remove the disable for the SYSCFG</span></li></ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"><span style="font-weight: bold;">HAL FLASH </span></span><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">update</span></li><ul><li style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: rgb(2, 3, 2); font-family: Verdana;" class="MsoNormal"><span style="font-size: 11.7px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 20px; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; display: inline ! important; float: none; background-color: rgb(255, 255, 255);">__HAL_FLASH_INSTRUCTION_CACHE_RESET() macro: update to&nbsp;</span><span style="font-size: 11.7px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 20px; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; display: inline ! important; float: none; background-color: rgb(255, 255, 255);">reset &nbsp;</span><span style="font-size: 11.7px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 20px; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; display: inline ! important; float: none; background-color: rgb(255, 255, 255);">ICRST </span><span style="font-size: 11.7px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 20px; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; display: inline ! important; float: none; background-color: rgb(255, 255, 255);">bit in the ACR register after setting it.</span><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"></span><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"></span></li></ul><li style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal">
<> 144:ef7eb2e8f9f7 1009 <p class="MsoListParagraph"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"><span style="font-weight: bold;">HAL CRYP&nbsp;</span></span><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">update</span></p></li><ul><li style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Update HAL_CRYP_DESECB_Decrypt() API to fix the inverted pPlainData and pCypherData parameters issue</span></li></ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"><span style="font-weight: bold;">HAL TIM </span></span><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">update</span></li><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Update HAL_TIM_ConfigClockSource() API to&nbsp;check only the required parameters</span></li></ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"><span style="font-weight: bold;">HAL NAND </span></span><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">update</span></li><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Update HAL_NAND_Read_Page()/HAL_NAND_Write_Page()/HAL_NAND_Read_SpareArea() APIs to manage correctly the NAND Page access</span></li></ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"><span style="font-weight: bold;">HAL CAN </span></span><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">update</span></li><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Update to use "=" instead of "|=" to clear flags in the MSR, TSR, RF0R and RF1R registers</span><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"></span></li></ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"><span style="font-weight: bold;">HAL PCD </span></span><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">update</span></li><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Fix typo in __HAL_USB_OTG_HS_WAKEUP_EXTI_ENABLE_RISING_FALLING_EDGE() macro implementation</span></li></ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"><span style="font-weight: bold;">LL FSMC </span></span><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">update</span></li><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Update the FSMC_NORSRAM_Extended_Timing_Init() API to remove the check on&nbsp;CLKDIvison and DataLatency parameters</span></li></ul></ul><h3 style="background: rgb(51, 102, 255) none repeat scroll 0% 50%; -moz-background-clip: initial; -moz-background-origin: initial; -moz-background-inline-policy: initial; margin-right: 500pt; margin-left: 0in; font-size: 13.5pt; font-family: 'Times New Roman',serif; font-weight: bold; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; width: 180px;"><span style="font-size: 10pt; font-family: Arial; color: white;">V1.1.0 / 09-October-2015</span></h3><p class="MsoNormal" style="margin: 4.5pt 0cm 4.5pt 18pt; font-size: medium; font-family: 'Times New Roman',serif; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px;"><b><u><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;">Main Changes</span></u></b><span style="font-size: 12pt; font-family: 'Times New Roman',serif;"><o:p></o:p></span></p><ul style="margin-bottom: 0in; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; margin-top: 0cm;" type="square"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;"><span style="font-weight: bold;">Maintenance release to fix known defects and enhancements implementation</span><br></span></li></ul><ul style="margin-bottom: 0in; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; margin-top: 0cm; list-style-type: square;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US"><span style="font-weight: bold;">Macros and literals renaming to ensure compatibles across STM32 series</span>, backward compatibility maintained thanks to new added file<span class="Apple-converted-space">&nbsp;</span></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US"><i>stm32_hal_legacy.h<span class="Apple-converted-space">&nbsp;</span></i></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">under /Inc/<i>Legacy</i></span><b><u><span style="font-family: Verdana; color: black; font-size: 10pt;"></span></u></b></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana; color: black; font-size: 10pt;">Add *.chm UM for all drivers</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana; font-size: 10pt; font-weight: normal;">Update drivers to be C++ compliant</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana; font-size: 10pt; font-weight: normal;">Several update on source code formatting, for better UM generation (i.e. Doxygen tags updated)</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;"><span style="font-weight: bold;">Four changes done on the HAL requires an update on the application code based on HAL V1.0.1</span><br></span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;"><span style="font-style: italic;">LSI_VALUE</span><span class="Apple-converted-space">&nbsp;</span>constant has been corrected in<span class="Apple-converted-space">&nbsp;</span></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;">stm32f2xx_hal_conf.h file, its value changed<span class="Apple-converted-space">&nbsp;</span></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;">from 40 KHz to 32 KHz</span><span style="font-size: 10pt; font-family: Verdana,sans-serif;"></span></li></ul><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;"><span style="font-style: italic;">UART</span>,<span class="Apple-converted-space">&nbsp;</span><span style="font-style: italic;">USART</span>,<span class="Apple-converted-space">&nbsp;</span><span style="font-style: italic;">IRDA</span><span class="Apple-converted-space">&nbsp;</span>and<span class="Apple-converted-space">&nbsp;</span><span style="font-style: italic;">SMARTCARD<span class="Apple-converted-space">&nbsp;</span></span>(referenced as<span class="Apple-converted-space">&nbsp;</span><span style="font-style: italic;">PPP</span><span class="Apple-converted-space">&nbsp;</span>here below)<span style="font-style: italic;"><span class="Apple-converted-space">&nbsp;</span></span>drivers: in DMA transmit process, the code has been updated to avoid waiting on TC flag under DMA ISR,<span class="Apple-converted-space">&nbsp;</span><span style="font-style: italic;">PPP</span><span class="Apple-converted-space">&nbsp;</span>TC interrupt is used instead. Below the update to be done on user application:</span></li></ul><ul style="margin-bottom: 0in;"><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;">Configure and enable the USART IRQ in HAL_PPP_MspInit() function<br></span></li></ul></ul><ul style="margin-bottom: 0in;"><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;">In<span class="Apple-converted-space">&nbsp;</span></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;">stm32f2xx_it.c file,<span class="Apple-converted-space">&nbsp;</span></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;">PPP_IRQHandler() function:<span class="Apple-converted-space">&nbsp;</span></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;">add a call to HAL_PPP_IRQHandler() function</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;"><span style="font-style: italic;">CRYP</span><span style="font-style: italic;"><span class="Apple-converted-space">&nbsp;</span></span>driver updated to support multi instance,so user must&nbsp;ensure that the new parameter&nbsp;</span><span style="font-size: 10pt; font-family: Verdana,sans-serif;">Instance</span><span style="font-size: 10pt; font-family: Verdana,sans-serif;"><span class="Apple-converted-space">&nbsp;</span>is initialized in his application(CRYPHandle.Instance = CRYP)&nbsp;</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;">HASH IT process: </span><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">update to call the HAL_HASH_InCpltCallback() at the end of the complete buffer instead of</span><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"> every each 512 bits</span></li></ul></ul><ul style="margin-bottom: 0in; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; margin-top: 0cm; list-style-type: square;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-weight: bold;">HAL generic</span><span class="Apple-converted-space">&nbsp;</span>update</span></li></ul><ul style="margin-bottom: 0in; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; margin-top: 0cm; list-style-type: square;"><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">stm32f2xx_hal_def.h</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Remove NULL definition&nbsp;</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">and add include for stdio.h</span></li></ul><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Add&nbsp;UNUSED() macro</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><p class="MsoNormal" style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman',serif;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">Add a new define __NOINLINE to be used for the&nbsp;no inline code independent from tool chain<o:p></o:p></span></p></li></ul></ul><ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">stm32f2xx_hal_conf_template.h</span></li><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Add a new define for LSI default value LSI_VALUE</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Add a new define for LSE default value LSE_VALUE</span></li></ul></ul><ul style="margin-bottom: 0in; color: black;"><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Add a new define for Tick interrupt priority TICK_INT_PRIORITY (needed for the enhanced </span><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"></span><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">time base</span><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"> implementation)</span></li></ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Enhance HAL delay and </span><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">time base</span><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"> implementation<br>
<> 144:ef7eb2e8f9f7 1010 </span></li><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Systick
<> 144:ef7eb2e8f9f7 1011 timer is used by default as source of time base, but user can
<> 144:ef7eb2e8f9f7 1012 eventually implement his proper time base source (a general purpose
<> 144:ef7eb2e8f9f7 1013 timer for example or other time source)</span></li></ul><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Functions
<> 144:ef7eb2e8f9f7 1014 affecting time base configurations are declared as __Weak to make
<> 144:ef7eb2e8f9f7 1015 override possible in case of other implementations in user file, for
<> 144:ef7eb2e8f9f7 1016 more details please refer to HAL_TimeBase example</span></li></ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Fix flag clear procedure: use atomic write operation "=" instead of ready-modify-write operation "|=" or "&amp;="</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Fix
<> 144:ef7eb2e8f9f7 1017 on Timeout management, Timeout value set to 0 passed to API
<> 144:ef7eb2e8f9f7 1018 automatically exits the function after checking the flag without any
<> 144:ef7eb2e8f9f7 1019 wait</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Common update for the following communication peripherals: SPI, UART, USART and IRDA</span></li><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Add DMA circular mode support</span></li></ul><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Remove lock from recursive process</span></li></ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Add new macro __HAL_RESET_HANDLE_STATE to reset a given handle state</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Add a new attribute for functions executed from internal SRAM and depending from Compiler implementation</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">When USE_RTOS == 1 (in stm32f2xx_hal_conf.h), the __HAL_LOCK() is not defined instead of being defined empty</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"></span><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Miscellaneous comments and formatting update</span></li></ul></ul><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"></span><ul style="margin-bottom: 0in; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; margin-top: 0cm; list-style-type: square;"><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Update all macros and literals naming to be upper case</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">ErrorCode parameter in<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">PPP_HandleTypeDef structure updated<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">to&nbsp;uint32_t instead of&nbsp;</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">enum<span class="Apple-converted-space">&nbsp;</span><span style="font-style: italic;">HAL_PPP_ErrorTypeDef</span></span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Remove&nbsp;the unused FLAG and IT assert macros</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">stm32f2xx_hal_ppp.c</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">HAL_PPP_Init(): update to force the HAL_PPP_STATE_RESET before calling the<span class="Apple-converted-space">&nbsp;</span><span style="font-style: italic;">HAL_PPP_MspInit()</span></span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; line-height: 115%; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;; color: windowtext;"><span style="text-decoration: underline; font-style: italic;">Important Note:</span> aliases has been added for any API naming change, to keep compatibility with previous version</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-style: italic;"></span></span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-weight: bold;">HAL ADC&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">update</span></li><ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;" lang="EN-US">ADC HAL state
<> 144:ef7eb2e8f9f7 1020 machine update to use bit fields instead of enum:</span></li><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;" lang="EN-US">HAL_ADC_StateTypeDef enum fields are replaced by respective defines</span></li></ul></ul><ul style="margin-bottom: 0in; color: black;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">Add new literal: ADC_SOFTWARE_START to be used as possible value for the<span class="Apple-converted-space">&nbsp;</span><span style="font-style: italic;">ExternalTrigConv</span><span class="Apple-converted-space">&nbsp;</span>parameter in the ADC_InitTypeDef structure to select the ADC software trigger mode.</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">IS_ADC_CHANNEL() macro update to don't assert stop the<span class="Apple-converted-space">&nbsp;</span><span style="font-style: italic;">ADC_CHANNEL_TEMPSENSOR</span><span class="Apple-converted-space">&nbsp;</span>value</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 11pt; font-family: Calibri,sans-serif; color: black;" lang="EN-US">HAL_ADC_PollForConversion():
<> 144:ef7eb2e8f9f7 1021 update to manage particular case when ADC configured in DMA mode and
<> 144:ef7eb2e8f9f7 1022 ADC sequencer with several ranks and polling for end of each conversion</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 11pt; font-family: Calibri,sans-serif; color: black;" lang="EN-US">HAL_ADC_Start()/</span><span style="font-size: 11pt; font-family: Calibri,sans-serif; color: black;" lang="EN-US">HAL_ADC_Start_IT() /</span><span style="font-size: 11pt; font-family: Calibri,sans-serif; color: black;" lang="EN-US">HAL_ADC_Start_DMA() update:</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 11pt; font-family: Calibri,sans-serif; color: black;" lang="EN-US">unlock the process before starting the ADC software conversion.</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 11pt; font-family: Calibri,sans-serif; color: black;" lang="EN-US">Optimize the ADC stabilization delays</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 11pt; font-family: Calibri,sans-serif; color: black;" lang="EN-US">__HAL_ADC_GET_IT_SOURCE() update macro implementation</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 11pt; font-family: Calibri,sans-serif; color: black;" lang="EN-US">Add more details in 'How to use this driver' section</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;" lang="EN-US">Add
<> 144:ef7eb2e8f9f7 1023 new literal: ADC_INJECTED_SOFTWARE_START to be used as possible value
<> 144:ef7eb2e8f9f7 1024 for the ExternalTrigInjecConvEdge parameter in the ADC_InitTypeDef
<> 144:ef7eb2e8f9f7 1025 structure to select the ADC software trigger mode.</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-weight: bold;">HAL DAC<span class="Apple-converted-space">&nbsp;</span></span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">update</span></li><ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">Enhance the DMA channel
<> 144:ef7eb2e8f9f7 1026 configuration when used with <span style=""></span>DAC</span></li></ul><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><p class="MsoNormal" style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman',serif;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">HAL_DAC_ConfigChannel(): update the access to the DAC peripheral registers via the hdac handle instance</span></p></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">HAL_DAC_IRQHandler(): update to check on both DAC_FLAG_DMAUDR1 and<span class="Apple-converted-space">&nbsp;</span></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">DAC_FLAG_DMAUDR</span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">2<span style="color: red;"></span></span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">HAL_DACEx_NoiseWaveGenerate(): update to reset DAC CR register before setting the new DAC configuration</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">HAL_DACEx_TriangleWaveGenerate()</span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">: update to reset DAC CR register before setting the new DAC configuration</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><p class="MsoNormal" style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman',serif;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">Add new macro to check if the specified DAC interrupt source is enabled or disabled<o:p></o:p></span></p></li><ul style="margin-bottom: 0in;"><li><span style="font-family: Verdana,sans-serif; font-size: 10pt;">__HAL_DAC_GET_IT_SOURCE()</span></li></ul><li><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">HAL_DACEx_TriangleWaveGeneration() update to use DAC CR bit mask definition</span></li><li><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">HAL_DACEx_NoiseWaveGeneration() update to use DAC CR bit mask definition</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-weight: bold;">HAL CAN&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">update</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><p class="MsoNormal" style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman',serif;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US"><span style="color: black;">Unlock the CAN process when communication error occurred</span></span></p></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">CanTxMsgTypeDef structure: update&nbsp;</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">to use<span style="font-weight: bold;"><span class="Apple-converted-space">&nbsp;</span></span>uint8_t&nbsp;Data[8] instead of uint32_t&nbsp;Data[8]</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">CanRxMsgTypeDef structure: update&nbsp;</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">to use<span style="font-weight: bold;"><span class="Apple-converted-space">&nbsp;</span></span>uint8_t&nbsp;Data[8]<span style="font-weight: bold;"><span class="Apple-converted-space">&nbsp;</span></span>instead of uint32_t&nbsp;Data[8]</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-weight: bold;">HAL CORTEX&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">update</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Add new macro<span class="Apple-converted-space">&nbsp;</span><span style="font-style: italic;">IS_NVIC_DEVICE_IRQ()</span><span class="Apple-converted-space">&nbsp;</span>to check on negative values of IRQn<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">parameter</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Add specific API for MPU management</span></li><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">add MPU_Region_InitTypeDef structure</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">add new function HAL_MPU_ConfigRegion()</span></li></ul></ul></ul><ul style="margin-bottom: 0in; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; list-style-type: square; margin-top: 0cm;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><p class="MsoListParagraph" style="margin-right: 0in; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman',serif;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-weight: bold;">HAL CRYP&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">update</span></p></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">HAL_CRYP_DESECB_Decrypt_DMA(): fix the inverted pPlainData and pCypherData parameters issue</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Add&nbsp;</span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">restriction</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">&nbsp;for the CCM Encrypt/Decrypt API's that<span style="color: red;"><span class="Apple-converted-space">&nbsp;</span><span style="color: black;">only DataType equal to 8bits is supported</span><br></span></span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Update to manage multi instance:</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"></span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Add new parameter Instance in the CRYP_HandleTypeDef Handle structure.</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Add new parameter in all HAL CRYP macros</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">example:&nbsp;__HAL_CRYP_ENABLE() &nbsp;updated by __HAL_CRYP_ENABLE(__HANDLE__)</span></li></ul></ul></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><p class="MsoListParagraph" style="margin-right: 0in; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman',serif;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-weight: bold;">HAL DCMI<span class="Apple-converted-space">&nbsp;</span></span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">update</span></p></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><p class="MsoNormal" style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman',serif;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">HAL_DCMI_ConfigCROP(): Invert assert macros to check<span class="Apple-converted-space">&nbsp;</span><span style="color: black;">Y0</span><span class="Apple-converted-space">&nbsp;</span>and Ysize parameters</span></p></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><p class="MsoListParagraph" style="margin-right: 0in; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman',serif;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-weight: bold;">HAL DMA<span class="Apple-converted-space">&nbsp;</span></span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">update</span></p></li><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Overall driver update for code optimization</span></li><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">add StreamBaseAddress and StreamIndex new fields in the DMA_HandleTypeDef structure</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">add DMA_Base_Registers private structure</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">add static function DMA_CalcBaseAndBitshift()</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">update HAL_DMA_Init() function to use the new added static function</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">update HAL_DMA_DeInit() function to optimize clear flag operations</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">update HAL_DMA_Start_IT() function to optimize interrupts enable</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">update HAL_DMA_PollForTransfer() function to optimize check on flags</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">update HAL_DMA_IRQHandler() function to optimize interrupt flag management</span></li></ul></ul><ul><li class="MsoNormal" style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">Fix in HAL_DMA_PollForTransfer() to:</span></li><ul><li class="MsoNormal" style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">set DMA error code in case of HAL_ERROR status <br>
<> 144:ef7eb2e8f9f7 1027 </span></li><li class="MsoNormal" style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">set HAL Unlock before DMA state update</span></li></ul></ul><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><p class="MsoNormal" style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman',serif;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">HAL_DMA_Init():&nbsp;</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Update&nbsp;to clear&nbsp;the DBM bit in the SxCR register before setting the new configuration</span></p></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">DMA_SetConfig(): add&nbsp;</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">to clear&nbsp;the DBM bit in the SxCR register</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><p class="MsoListParagraph" style="margin-right: 0in; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman',serif;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-weight: bold;">HAL FLASH<span class="Apple-converted-space">&nbsp;</span></span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">update</span></p></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">update HAL_FLASH_Program_IT() function by removing the pending flag clear</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">update HAL_FLASH_IRQHandler() function to improve erase operation procedure</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">update FLASH_WaitForLastOperation() function by checking on end of operation flag</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">Add "HAL_" prefix in the defined values for the FLASH error code</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">Example:&nbsp;<span style="font-style: italic;">FLASH_ERROR_PGP</span><span class="Apple-converted-space">&nbsp;</span>renamed by&nbsp;<span style="font-style: italic;"><span style="font-weight: bold;">HAL_</span>FLASH_ERROR_PGP</span></span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">Clear&nbsp;the Flash ErrorCode in the FLASH_WaitForLastOperation() function</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">Update FLASH_SetErrorCode() function to use&nbsp;"|=" operant to update the Flash ErrorCode parameter in the FLASH handle</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US"><span style="font-style: italic;">IS_FLASH_ADDRESS()</span>: Update the macro check using&nbsp;'&lt;='<span class="Apple-converted-space">&nbsp;</span></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">condition<span class="Apple-converted-space">&nbsp;</span></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">instead of '&lt;'</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US"><span style="font-style: italic;">IS_OPTIONBYTE()</span></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">: Update the macro check using&nbsp;'&lt;='<span class="Apple-converted-space">&nbsp;</span></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">condition<span class="Apple-converted-space">&nbsp;</span></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">instead of '&lt;'</span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US"><span style="font-style: italic;"></span><br></span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">A<span style="color: black;">dd&nbsp;"FLASH_" prefix in the defined values of FLASH Type Program parameter<br></span></span></li><ul style="margin-bottom: 0in; color: black;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">Example:&nbsp;<span style="font-style: italic;">TYPEPROGRAM_BYTE</span><span class="Apple-converted-space">&nbsp;</span>renamed by<span class="Apple-converted-space">&nbsp;</span><span style="font-style: italic;"><span style="font-weight: bold;">FLASH_</span>TYPEPROGRAM_BYTE</span></span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">Add&nbsp;"FLASH_" prefix in the defined values<span class="Apple-converted-space">&nbsp;</span></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US"><span style="color: black;">of<span class="Apple-converted-space">&nbsp;</span></span></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">FLASH Type Erase</span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US"><span style="color: black;"><span class="Apple-converted-space">&nbsp;</span>parameter</span></span></li><ul style="margin-bottom: 0in; color: black;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">Example:&nbsp;<span style="font-style: italic;">TYPEERASE_SECTORS</span><span class="Apple-converted-space">&nbsp;</span>renamed by<span class="Apple-converted-space">&nbsp;</span><span style="font-style: italic;"><span style="font-weight: bold;">FLASH_</span>TYPEERASE_SECTORS</span></span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">Add&nbsp;"FLASH_" prefix in the defined values<span class="Apple-converted-space">&nbsp;</span></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US"><span style="color: black;">of<span class="Apple-converted-space">&nbsp;</span></span></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">FLASH Voltage Range<span class="Apple-converted-space">&nbsp;</span></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US"><span style="color: black;">parameter</span></span></li><ul style="margin-bottom: 0in; color: black;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">Example:<span class="Apple-converted-space">&nbsp;</span><span style="font-style: italic;">VOLTAGE_RANGE_1</span><span class="Apple-converted-space">&nbsp;</span>renamed by<span class="Apple-converted-space">&nbsp;</span><span style="font-style: italic;"><span style="font-weight: bold;">FLASH_</span>VOLTAGE_RANGE_1</span></span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">Add&nbsp;"OB_" prefix in the defined values</span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US"><span class="Apple-converted-space">&nbsp;</span></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US"><span style="color: black;">of<span class="Apple-converted-space">&nbsp;</span></span></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">FLASH WRP State<span class="Apple-converted-space">&nbsp;</span></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US"><span style="color: black;">parameter</span></span></li><ul style="margin-bottom: 0in; color: black;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">Example:<span class="Apple-converted-space">&nbsp;</span><span style="font-style: italic;">WRPSTATE_ENABLE</span><span class="Apple-converted-space">&nbsp;</span>renamed by<span class="Apple-converted-space">&nbsp;</span><span style="font-style: italic;"><span style="font-weight: bold;">OB_</span>WRPSTATE_ENABLE</span></span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: Verdana; color: rgb(2, 3, 2);"><span style="font-size: 11.7px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 20px; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; float: none; display: inline ! important; background-color: rgb(255, 255, 255);">__HAL_FLASH_INSTRUCTION_CACHE_RESET() macro: update to&nbsp;</span><span style="font-size: 11.7px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 20px; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; float: none; display: inline ! important; background-color: rgb(255, 255, 255);">reset &nbsp;</span><span style="font-size: 11.7px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 20px; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; float: none; display: inline ! important; background-color: rgb(255, 255, 255);">ICRST<span class="Apple-converted-space">&nbsp;</span></span><span style="font-size: 11.7px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 20px; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; float: none; display: inline ! important; background-color: rgb(255, 255, 255);">bit in the ACR register after setting it.</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: Verdana; color: rgb(5, 5, 5);"><big><big><span style="font-size: 11.7px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 20px; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; float: none; color: rgb(2, 3, 2); display: inline ! important; background-color: rgb(255, 255, 255);">__HAL_FLASH_DATA_CACHE_RESET()&nbsp;macro: update to&nbsp;reset &nbsp;DCRST bit in the ACR register after setting it.</span></big></big></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">FLASH_OB_GetRDP() API update to return uint8_t instead of FlagStatus</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">&nbsp;__HAL_FLASH_GET_LATENCY() new macro </span><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">add to get the flash latency</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><p class="MsoListParagraph" style="margin-right: 0in; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman',serif;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-weight: bold;">HAL ETH<span class="Apple-converted-space">&nbsp;</span></span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">update</span></p></li><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">Update HAL_ETH_GetReceivedFrame_IT() function to return HAL_ERROR if the received packet is not complete</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">Use HAL_Delay() instead of counting loop<br>
<> 144:ef7eb2e8f9f7 1028 </span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">&nbsp;__HAL_ETH_MAC_CLEAR_FLAG() macro is removed: the MACSR register is read only</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">Add the following macros used to
<> 144:ef7eb2e8f9f7 1029 Wake up the device from STOP mode by Ethernet event :</span><span style="font-size: 12pt; font-family: &quot;Times New Roman&quot;,&quot;serif&quot;;"><o:p></o:p></span></li><ul style="margin-top: 0cm;" type="square"><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">__HAL_ETH_WAKEUP_EXTI_ENABLE_IT()<o:p></o:p></span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">__HAL_ETH_WAKEUP_EXTI_DISABLE_IT()<o:p></o:p></span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">__HAL_ETH_WAKEUP_EXTI_GET_FLAG()<o:p></o:p></span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">__HAL_ETH_WAKEUP_EXTI_CLEAR_FLAG()<o:p></o:p></span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">__HAL_ETH_WAKEUP_EXTI_ENABLE_RISING_EGDE_TRIGGER()<o:p></o:p></span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">__HAL_ETH_WAKE_EXTI_ENABLE_FALLING_EGDE_TRIGGER()</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">__HAL_ETH_WAKE_EXTI_ENABLE_FALLINGRISING_TRIGGER()</span></li></ul></ul></ul>
<> 144:ef7eb2e8f9f7 1030 <ul style="margin-bottom: 0in; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; margin-top: 0cm;" type="disc"><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Rename literals</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">ETH_PROMISC<span style="font-weight: bold;">I</span>OUSMODE_ENABLE&nbsp;by ETH_PROMISC<span style="font-weight: bold;">U</span>OUS_MODE_ENABLE</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">ETH_PROMISC<span style="font-weight: bold;">I</span>OUSMODE_DISABLE&nbsp;by ETH_PROMISC<span style="font-weight: bold;">U</span>OUS_MODE_DISABLE</span></li></ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Remove illegal space ETH_MAC_READCONTROLLER_FLUSHING macro</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Update ETH_MAC_READCONTROLLER_XXX defined values (XXX can be IDLE, READING_DATA and READING_STATUS)</span></li></ul></ul><ul style="margin-bottom: 0in; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; margin-top: 0cm; list-style-type: square;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><p class="MsoListParagraph" style="margin-right: 0in; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman',serif;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-weight: bold;">HAL PWR&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">update</span></p></li></ul><ul><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;"><span style="font-style: italic;">HAL_PWR_ConfigPVD()</span>: add clear of the EXTI trigger before new configuration </span><br>
<> 144:ef7eb2e8f9f7 1031 <span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;"></span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">Fix
<> 144:ef7eb2e8f9f7 1032 in HAL_PWR_EnterSTANDBYMode() to not clear Wakeup flag (WUF), which
<> 144:ef7eb2e8f9f7 1033 need to be cleared at application level before to call this function</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">HAL_PWR_EnterSLEEPMode()</span></li><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">Remove disable and enable of SysTick Timer</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">Update to clear SLEEPDEEP bit of Cortex System Control Register (SCB-&gt;SCR) before entering in sleep mode<br></span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">Update
<> 144:ef7eb2e8f9f7 1034 usage of __WFE() in low power entry function: if there is a pending
<> 144:ef7eb2e8f9f7 1035 event, calling __WFE() will not enter the CortexM3 core to sleep mode.
<> 144:ef7eb2e8f9f7 1036 The solution is to made the call below; the first __WFE() is always
<> 144:ef7eb2e8f9f7 1037 ignored and clears the event if one was already pending, the second is
<> 144:ef7eb2e8f9f7 1038 always applied<br>
<> 144:ef7eb2e8f9f7 1039 </span></li></ul></ul></ul>
<> 144:ef7eb2e8f9f7 1040 <div style="margin-left: 120px;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">__SEV()</span><br>
<> 144:ef7eb2e8f9f7 1041 <span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">__WFE()</span><br>
<> 144:ef7eb2e8f9f7 1042 <span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">__WFE()</span></div>
<> 144:ef7eb2e8f9f7 1043 <ul><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">Add new macro for software event generation __HAL_PWR_PVD_EXTI_GENERATE_SWIT()</span><span style="font-size: 8pt; font-family: &quot;Verdana&quot;,sans-serif; color: rgb(0, 176, 80);" lang="EN-US"></span></li></ul><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">Remove
<> 144:ef7eb2e8f9f7 1044 the following defines form Generic driver and add them under extension
<> 144:ef7eb2e8f9f7 1045 driver because they are only used within extension functions.</span></li></ul><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">CR_FPDS_BB: used within HAL_PWREx_EnableFlashPowerDown() function</span></li></ul><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">CSR_BRE_BB: used within HAL_PWREx_EnableBkUpReg() function</span></li></ul><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Add new API to manage<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">SLEEPONEXIT and SEVONPEND bits of SCR register</span></li><ul style="margin-bottom: 0in;"><li><span style="font-family: Verdana,sans-serif; font-size: 10pt;">HAL_PWR_DisableSleepOnExit()</span></li><li><span style="font-family: Verdana,sans-serif; font-size: 10pt;">HAL_PWR_EnableSleepOnExit()</span></li><li><span style="font-family: Verdana,sans-serif; font-size: 10pt;">HAL_PWR_EnableSEVOnPend()</span></li><li><span style="font-family: Verdana,sans-serif; font-size: 10pt;">HAL_PWR_DisableSEVOnPend()</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;">HAL_PWR_EnterSLEEPMode()</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;">Update&nbsp;to clear the CORTEX SLEEPDEEP bit of&nbsp;SCR register before entering in sleep mode</span></li></ul></ul></ul><ul style="margin-bottom: 0in; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; margin-top: 0cm; list-style-type: square;"><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><p class="MsoNormal" style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman',serif;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">Add new&nbsp;PVD configuration modes<o:p></o:p></span></p></li><ul style="margin-bottom: 0in;"><li><span style="font-family: Verdana,sans-serif; font-size: 10pt;">PWR_PVD_MODE_NORMAL</span></li><li><span style="font-family: Verdana,sans-serif; font-size: 10pt;">PWR_PVD_MODE_EVENT_RISING&nbsp;</span></li><li><span style="font-family: Verdana,sans-serif; font-size: 10pt;">PWR_PVD_MODE_EVENT_FALLING</span></li><li><span style="font-family: Verdana,sans-serif; font-size: 10pt;">PWR_PVD_MODE_EVENT_RISING_FALLING<br></span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><p class="MsoNormal" style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman',serif;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">Add new macros to manage PVD Trigger<o:p></o:p></span></p></li><ul style="margin-bottom: 0in;"><li><span style="font-family: Verdana,sans-serif; font-size: 10pt;">__HAL_PWR_PVD_EXTI_ENABLE_RISING_EDGE()</span></li><li><span style="font-family: Verdana,sans-serif; font-size: 10pt;">__HAL_PWR_PVD_EXTI_DISABLE_RISING_EDGE(</span></li><li><span style="font-family: Verdana,sans-serif; font-size: 10pt;">__HAL_PWR_PVD_EXTI_ENABLE_FALLING_EDGE()</span></li><li><span style="font-family: Verdana,sans-serif; font-size: 10pt;">__HAL_PWR_PVD_EXTI_DISABLE_FALLING_EDGE()</span></li><li><span style="font-family: Verdana,sans-serif; font-size: 10pt;">__HAL_PWR_PVD_EXTI_ENABLE_RISING_FALLING_EDGE()</span></li><li><span style="font-family: Verdana,sans-serif; font-size: 10pt;">__HAL_PWR_PVD_EXTI_DISABLE_RISING_FALLING_EDGE()</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><p class="MsoNormal" style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman',serif;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">PVD macros:<o:p></o:p></span></p></li><ul style="margin-bottom: 0in;"><li><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">Remove the __EXTILINE__ parameter</span></li><li><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">Update to use prefix "__HAL_PWR_PVD_" instead of &nbsp;prefix "__HAL_PVD"</span></li></ul></ul></ul><ul style="margin-bottom: 0in; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; margin-top: 0cm; list-style-type: square;"><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;">Rename HAL_PWR_PVDConfig() function by&nbsp;</span><span style="font-size: 10pt; font-family: Verdana,sans-serif;">HAL_PWR_ConfigPVD()</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-weight: bold;">HAL GPIO<span class="Apple-converted-space">&nbsp;</span></span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">update</span></li><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Rename GPIO_SPEED_LOW define to GPIO_SPEED_FREQ_LOW</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Rename GPIO_SPEED_MEDIUM define to GPIO_SPEED_FREQ_MEDIUM</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Rename GPIO_SPEED_FAST define to GPIO_SPEED_FREQ_HIGH</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Rename GPIO_SPEED_HIGH define to GPIO_SPEED_FREQ_VERY_HIGH</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">Add a new macro
<> 144:ef7eb2e8f9f7 1046 <span style="font-style: italic;">__HAL_GPIO_EXTI_GENERATE_SWIT()</span> to manage the generation of software interrupt
<> 144:ef7eb2e8f9f7 1047 on selected EXTI line</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">HAL_GPIO_Init():
<> 144:ef7eb2e8f9f7 1048 use temporary variable when modifying the registers, to avoid
<> 144:ef7eb2e8f9f7 1049 unexpected transition in the GPIO pin configuration<br>
<> 144:ef7eb2e8f9f7 1050 </span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">Remove IS_GET_GPIO_PIN macro</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">Add a new function HAL_GPIO_LockPin()</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">Update the following HAL GPIO macros description: rename EXTI_Linex by GPIO_PIN_x<o:p></o:p></span></li><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">__HAL_GPIO_EXTI_CLEAR_IT()<o:p></o:p></span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">__HAL_GPIO_EXTI_GET_IT()<o:p></o:p></span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">__HAL_GPIO_EXTI_CLEAR_FLAG()<o:p></o:p></span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">__HAL_GPIO_EXTI_GET_FLAG()</span></li></ul></ul><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><p class="MsoNormal" style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman',serif;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US"><span style="font-style: italic;">HAL_GPIO_Init()/</span></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US"><span style="font-style: italic;">HAL_GPIO_DeInit()</span></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US"><span style="font-style: italic;">:</span><span class="Apple-converted-space">&nbsp;</span>add a call to the CMSIS&nbsp;</span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">assert macro to check GPIO instance: IS_GPIO_ALL_INSTANCE()&nbsp;</span></p></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">Rename<span class="Apple-converted-space">&nbsp;</span><span style="font-style: italic;"></span></span><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">__HAL_GET_GPIO_SOURCE</span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US"><span style="font-style: italic;">()<span class="Apple-converted-space">&nbsp;</span></span>by<span style="font-style: italic;"><span class="Apple-converted-space">&nbsp;</span></span></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US"><span style="font-style: italic;">GPIO_GET_INDEX()<span class="Apple-converted-space">&nbsp;</span></span>and move this later</span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US"><span class="Apple-converted-space">&nbsp;</span>to file&nbsp;stm32f2xx_hal_gpio_ex.h</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 11pt; font-family: Calibri,sans-serif; color: black;" lang="EN-US"><small><span style="font-family: Verdana;">HAL_GPIO_DeInit():
<> 144:ef7eb2e8f9f7 1051 Update&nbsp;to check if GPIO Pin x is already used in EXTI mode on
<> 144:ef7eb2e8f9f7 1052 another GPIO Port before De-Initialize the EXTI register</span></small>s</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-weight: bold;">HAL HASH<span class="Apple-converted-space">&nbsp;</span></span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">update</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US"><span style="font-style: italic;">HAL_HASH_MD5_Start_IT():<span class="Apple-converted-space">&nbsp;</span></span>fix input address management issue</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">HAL_HASH_<span style="font-weight: bold;">MODE</span>_Start_IT()&nbsp;</span><span style="font-size: 10pt; font-family: Verdana,sans-serif;">(</span><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"><span style="font-weight: bold;">MODE </span>stands for </span><span style="font-size: 10pt; font-family: Verdana,sans-serif;">MD5 and SHA1) updates:</span></li><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"></span><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Fix&nbsp;processing fail for small input buffers</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Update
<> 144:ef7eb2e8f9f7 1053 to unlock the process and call&nbsp;return HAL_OK&nbsp;at the end of HASH
<> 144:ef7eb2e8f9f7 1054 processing to avoid incorrectly repeating software</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Update to properly manage the HashITCounter</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Update to call the HAL_HASH_InCpltCallback() at the end of the complete buffer instead of</span><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"> every each 512 bits </span></li></ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">__HAL_HASH_GET_FLAG() update to &nbsp;check the right register when the DINNE flag &nbsp;is selected</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">HAL_HASH_SHA1_Accumulate() updates:</span></li><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Add a&nbsp;call to the new IS_HASH_SHA1_BUFFER_SIZE() macro to check the size parameter.&nbsp;</span></li></ul><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Add the following note in API description</span></li></ul></ul></ul><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">&nbsp;* @note&nbsp; Input buffer size in bytes must be a multiple of 4 otherwise the digest computation is corrupted.</span><ul style="margin-bottom: 0in; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; margin-top: 0cm; list-style-type: square;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-weight: bold;">HAL RCC</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-weight: bold;"><span class="Apple-converted-space">&nbsp;</span></span>update</span></li><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;" lang="EN-US">HAL_RCCEx_PeriphCLKConfig() updates:</span></li><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;" lang="EN-US">Update
<> 144:ef7eb2e8f9f7 1055 the LSE check condition after backup domain reset: update to
<> 144:ef7eb2e8f9f7 1056 check&nbsp;LSE ready flag when LSE oscillator is already enabled
<> 144:ef7eb2e8f9f7 1057 instead of check on LSE oscillator only when LSE is used as RTC clock
<> 144:ef7eb2e8f9f7 1058 source</span></li></ul></ul><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">In <span style="font-style: italic;">HAL_RCC_ClockConfig()</span>
<> 144:ef7eb2e8f9f7 1059 function: update the AHB clock divider before clock switch to new source</span></li></ul><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">Allow to calibrate the HSI when it is used as system clock source</span><br>
<> 144:ef7eb2e8f9f7 1060 <span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;"></span></li></ul></ul><ul><ul><li><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">Reorganize the RCC macros to make them more clear</span></li></ul></ul><ul style="margin-bottom: 0in; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; margin-top: 0cm; list-style-type: square;"><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;">Rename the following Macros</span><span style="font-size: 10pt; font-family: Verdana,sans-serif;"></span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;">__PPP_CLK_ENABLE()<span>&nbsp;<span class="Apple-converted-space">&nbsp;</span></span>by __HAL_RCC_PPP_CLK_ENABLE()</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;">__</span><span style="font-size: 10pt; font-family: Verdana,sans-serif;">PPP_CLK_DISABLE</span><span style="font-size: 10pt; font-family: Verdana,sans-serif;">()<span>&nbsp;<span class="Apple-converted-space">&nbsp;</span></span>by __HAL_RCC_PPP_CLK_DISABLE()</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;">__PPP_FORCE_RESET()<span>&nbsp;<span class="Apple-converted-space">&nbsp;</span></span>by __HAL_RCC_PPP_FORCE_RESET()</span><span style="font-size: 10pt; font-family: Verdana,sans-serif;"></span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;">__PPP_RELEASE_RESET()<span>&nbsp;<span class="Apple-converted-space">&nbsp;</span></span>by __HAL_RCC_PPP_RELEASE_RESET()</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;">__PPP_CLK_SLEEP_ENABLE() by<span class="Apple-converted-space">&nbsp;</span></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;">__HAL_RCC_PPP_CLK_SLEEP_ENABLE()</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;">__PPP_CLK_SLEEP_DISABLE() by<span class="Apple-converted-space">&nbsp;</span></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;">__HAL_RCC_PPP_CLK_SLEEP_DISABLE()</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;">Add description of RCC known Limitations</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;">HAL_RCC_OscConfig() fix issues:&nbsp;</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;">Remove the disable of HSE oscillator&nbsp;</span><span style="font-size: 10pt; font-family: Verdana,sans-serif;">when HSE_BYPASS is&nbsp;</span><span style="font-size: 10pt; font-family: Verdana,sans-serif;">used as system clock source or as PPL clock source<br></span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;">Add a check on HSERDY flag when&nbsp;</span><span style="font-size: 10pt; font-family: Verdana,sans-serif;">HSE_BYPASS is selected as new state for&nbsp;HSE oscillator.</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;">Rename __HAL_RCC_I2SCLK() by __HAL_RCC_I2S_Config()</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US"><span style="font-family: Verdana;">__HAL_RCC_PPP_CLK_ENABLE(): Implement workaround to cover RCC limitation regarding peripheral enable dela</span>y</span><span style="font-family: 'Helvetica Neue',Helvetica,Arial,sans-serif; font-size: 13.5031px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 20px; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; float: none; color: rgb(2, 3, 2); display: inline ! important; background-color: rgb(252, 252, 252);"></span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;">HAL_RCC_OscConfig() fix issues:&nbsp;</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;">Add a check on LSERDY flag when<span class="Apple-converted-space">&nbsp;</span></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;">LSE_BYPASS is selected as new state for LSE oscillator.</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US"></span><span style="color: rgb(98, 98, 98); font-size: 11.7px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 20px; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; float: none; font-family: Verdana; display: inline ! important; background-color: rgb(255, 255, 255);"><span style="color: rgb(12, 12, 12);">__HAL_RCC_HSE_CONFIG()</span><span class="Apple-converted-space">&nbsp;</span>&nbsp;</span><span style="font-size: 10pt; font-family: Verdana;"><span style="font-style: italic;">macro: add the comment below:</span></span></li></ul></ul><span style="color: rgb(0, 0, 0); font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; font-size: 10pt; font-family: Verdana,sans-serif;"></span><span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; display: inline ! important; float: none;"></span><div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; margin-left: 120px;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-style: italic;">&nbsp;<span style="font-family: Verdana;">* @note&nbsp;&nbsp; Transition HSE Bypass to HSE On and HSE On to HSE Bypass are not supported by this macro.<span class="Apple-converted-space">&nbsp;</span></span><br style="font-family: Verdana;"><span style="font-family: Verdana;">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<> 144:ef7eb2e8f9f7 1061 User should request a transition to HSE Off first and then HSE On or
<> 144:ef7eb2e8f9f7 1062 HSE Bypass.</span></span></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;"></span></div><span style="color: rgb(0, 0, 0); font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-weight: bold;"></span></span><ul style="margin-bottom: 0in; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; margin-top: 0cm;" type="square"><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US"></span><span style="color: rgb(98, 98, 98); font-family: helvetica,arial,sans-serif; font-size: 11.7px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 20px; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; float: none; display: inline ! important; background-color: rgb(255, 255, 255);"><span style="color: rgb(12, 12, 12);">__HAL_RCC_LSE_CONFIG()</span><span class="Apple-converted-space">&nbsp;</span>&nbsp;</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-style: italic;">macro: add the comment below:</span></span></li></ul></ul><span style="color: rgb(0, 0, 0); font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; font-size: 10pt; font-family: Verdana,sans-serif;"></span><span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; display: inline ! important; float: none;"></span><div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; margin-left: 120px;"><span style="font-size: 10pt; font-family: Verdana;"><span style="font-style: italic;">&nbsp;&nbsp;* @note&nbsp;&nbsp; Transition LSE Bypass to LSE On and LSE On to LSE Bypass are not supported by this macro.<br>&nbsp;
<> 144:ef7eb2e8f9f7 1063 *&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; User should request a
<> 144:ef7eb2e8f9f7 1064 transition to LSE Off first and then LSE On or LSE Bypass.</span></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;"></span></div><ul style="margin-bottom: 0in; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; margin-top: 0cm;" type="square"><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">Add the following new macros for PLL&nbsp;source and PLLM&nbsp;selection :<o:p></o:p></span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; font-style: italic; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">__HAL_RCC_PLL_PLLSOURCE_CONFIG()<o:p></o:p></span></li></ul><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; font-style: italic; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">__HAL_RCC_PLL_PLLM_CONFIG()</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: Verdana; color: black;"><span style="font-size: 10pt;">Add&nbsp;__HAL_RCC_SYSCLK_CONFIG()<span class="Apple-converted-space">&nbsp;</span></span><span style="font-size: 10pt;">new macro</span><span style="font-size: 10pt;"><span class="Apple-converted-space">&nbsp;</span>to configure the system clock source (</span><span style="font-size: 10pt;">SYSCLK</span><span style="font-size: 10pt;">)</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;">__HAL_RCC_GET_SYSCLK_SOURCE() updates:</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;">Add new RCC Literals:</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;">RCC_SYSCLKSOURCE_STATUS_HSI</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;">RCC_SYSCLKSOURCE_STATUS_HSE</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;">RCC_SYSCLKSOURCE_STATUS_PLLCLK</span></li></ul></ul><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;">&nbsp;</span><span style="font-size: 10pt; font-family: Verdana,sans-serif;">Update macro description to refer to the literals above</span></li></ul></ul></ul><span style="color: rgb(0, 0, 0); font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; font-size: 10pt; font-family: Verdana,sans-serif;"></span><ul style="margin-bottom: 0in; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; margin-top: 0cm; list-style-type: square;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><p class="MsoListParagraph" style="margin-right: 0in; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman',serif;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-weight: bold;">HAL I2S&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">update</span></p><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-weight: bold;"></span><span style="font-weight: bold;"></span><span style="font-style: italic;">HAL_I2S_Init()</span>: add check on I2S instance using&nbsp;</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">CMSIS macro</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span class="Apple-converted-space">&nbsp;</span><span style="font-style: italic;">IS_I2S_ALL_INSTANCE()&nbsp;</span></span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">HAL_I2S_IRQHandler() update for compliancy w/ C++</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Add use of&nbsp;tmpreg variable in __HAL_I2S_CLEAR_OVRFLAG() and __HAL_I2S_CLEAR_UDRFLAG() macro for compliancy with C++</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-style: italic;">HAL_I2S_GetError()</span>: update to return uint32_t instead of HAL_I2S_ErrorTypeDef enumeration</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">HAL_I2S_Transmit() API update to check on busy flag only for I2S slave mode</span></li></ul></li></ul><ul style="margin-bottom: 0in; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; margin-top: 0cm; list-style-type: square;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><p class="MsoListParagraph" style="margin-right: 0in; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman',serif;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-weight: bold;">HAL I2C&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">update</span></p></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">I2C Polling/IT/DMA processes: move the&nbsp;wait loop on busy flag at the top of the processes, </span><span style="font-size: 10pt; font-family: Verdana,sans-serif;">to ensure that software not perform any write access to I2C_CR1 register before hardware clearing&nbsp;STOP bit </span><span style="font-size: 10pt; font-family: Verdana,sans-serif;">and to avoid also the waiting loop on BUSY flag under I2C/DMA ISR.</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;">Update busy flag&nbsp;Timeout value</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;">I2C Master Receive Processes update to disable ACK before generate the STOP&nbsp;</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Update&nbsp;to clear&nbsp;the POS bit in the CR1 register at the begging of </span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">all the HAL I2C&nbsp; processes</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Add use of&nbsp;tmpreg variable in __HAL_I2C_CLEAR_ADDRFLAG() and __HAL_I2C_CLEAR_STOPFLAG() macro for</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">&nbsp;compliancy with C++</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-weight: bold;">HAL IrDA<span class="Apple-converted-space">&nbsp;</span></span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">update</span></li></ul><ul><ul><li style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Add specific macros
<> 144:ef7eb2e8f9f7 1065 to manage the flags cleared only by a software sequence</span>
<> 144:ef7eb2e8f9f7 1066 <ul><li style="font-style: italic; margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">__HAL_IRDA_CLEAR_PEFLAG()<o:p></o:p></span>
<> 144:ef7eb2e8f9f7 1067 </li><li style="font-style: italic; margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">__HAL_ IRDA
<> 144:ef7eb2e8f9f7 1068 _CLEAR_FEFLAG()<o:p></o:p></span>
<> 144:ef7eb2e8f9f7 1069 </li><li style="font-style: italic; margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">__HAL_ IRDA
<> 144:ef7eb2e8f9f7 1070 _CLEAR_NEFLAG()<o:p></o:p></span>
<> 144:ef7eb2e8f9f7 1071 </li><li style="font-style: italic; margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">__HAL_ IRDA
<> 144:ef7eb2e8f9f7 1072 _CLEAR_OREFLAG()<o:p></o:p></span>
<> 144:ef7eb2e8f9f7 1073 </li><li style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"><span style="font-style: italic;">__HAL_ IRDA
<> 144:ef7eb2e8f9f7 1074 _CLEAR_IDLEFLAG()</span><o:p></o:p></span> </li></ul>
<> 144:ef7eb2e8f9f7 1075 </li></ul><ul><li style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Add several
<> 144:ef7eb2e8f9f7 1076 enhancements without affecting the driver functionalities</span>
<> 144:ef7eb2e8f9f7 1077 <ul style="margin-top: 0cm;" type="circle"><li style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Remove the check on
<> 144:ef7eb2e8f9f7 1078 RXNE set after reading the Data in the DR register</span><br><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"></span>
<> 144:ef7eb2e8f9f7 1079 </li><li style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Update <span style="font-style: italic;">HAL_IRDA_Transmit_IT()</span> to enable <span style="font-style: italic;">IRDA_IT_TXE</span> instead of <span style="font-style: italic;">IRDA_IT_TC</span></span> </li></ul>
<> 144:ef7eb2e8f9f7 1080 </li></ul><ul><li style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Add the following
<> 144:ef7eb2e8f9f7 1081 APIs used within DMA process <o:p></o:p></span>
<> 144:ef7eb2e8f9f7 1082 <ul><li style="font-style: italic; margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">HAL_StatusTypeDef
<> 144:ef7eb2e8f9f7 1083 HAL_IRDA_DMAPause(IRDA_HandleTypeDef *hirda);<o:p></o:p></span> </li></ul>
<> 144:ef7eb2e8f9f7 1084 <ul><li style="font-style: italic; margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">HAL_StatusTypeDef
<> 144:ef7eb2e8f9f7 1085 HAL_IRDA_DMAResume(IRDA_HandleTypeDef *hirda);<o:p></o:p></span>
<> 144:ef7eb2e8f9f7 1086 </li><li style="font-style: italic; margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">HAL_StatusTypeDef
<> 144:ef7eb2e8f9f7 1087 HAL_IRDA_DMAStop(IRDA_HandleTypeDef *hirda); <o:p></o:p></span>
<> 144:ef7eb2e8f9f7 1088 </li><li style="font-style: italic; margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">void
<> 144:ef7eb2e8f9f7 1089 HAL_IRDA_TxHalfCpltCallback(IRDA_HandleTypeDef *hirda);<o:p></o:p></span>
<> 144:ef7eb2e8f9f7 1090 </li><li style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"><span style="font-style: italic;">void HAL_IRDA_RxHalfCpltCallback(IRDA_HandleTypeDef
<> 144:ef7eb2e8f9f7 1091 *hirda);</span></span> </li></ul></li></ul></ul><ul style="margin-bottom: 0in; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; margin-top: 0cm; list-style-type: square;"><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">DMA
<> 144:ef7eb2e8f9f7 1092 transmit process; the code has been updated to avoid waiting on TC flag
<> 144:ef7eb2e8f9f7 1093 under DMA ISR, IrDA TC interrupt is used instead. Below the update to
<> 144:ef7eb2e8f9f7 1094 be done on user application:</span></li></ul><ul style="margin-bottom: 0in;"><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Configure and enable the USART IRQ in HAL_IRDA_MspInit() function</span></li></ul><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">In<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">stm32f2xx_it.c file,<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">UASRTx_IRQHandler() function:<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">add a call to HAL_IRDA_IRQHandler() function</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">IT
<> 144:ef7eb2e8f9f7 1095 transmit process; the code has been updated to avoid waiting on TC flag
<> 144:ef7eb2e8f9f7 1096 under IRDA ISR, IrDA TC interrupt is used instead. No impact on user
<> 144:ef7eb2e8f9f7 1097 application</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Rename Macros: add prefix "__HAL"</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">__IRDA_ENABLE() by __HAL_</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">IRDA</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">_ENABLE()</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">__</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">IRDA</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">_DISABLE() by __HAL_</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">IRDA</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">_DISABLE()</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Add new user macros to manage the sample method feature</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">__HAL_</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">IRDA</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">_ONE_BIT_SAMPLE_ENABLE()</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">__HAL_</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">IRDA</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">_ONE_BIT_SAMPLE_DISABLE()</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt; font-style: italic;">HAL_IRDA_Transmit_IT():<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">update to remove the enable of the parity error interrupt</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Add use of&nbsp;tmpreg variable in __HAL_IRDA_CLEAR_PEFLAG() macro for</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">&nbsp;compliancy with C++</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-style: italic;">HAL_</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">IRDA</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-style: italic;">_Transmit_DMA()<span class="Apple-converted-space">&nbsp;</span></span>update to follow the right&nbsp;</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">procedure</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span class="Apple-converted-space">&nbsp;</span>"Transmission using DMA"&nbsp; in the reference manual</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Add clear the TC flag in the SR register before enabling the DMA&nbsp;transmit request</span></li></ul></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><p class="MsoListParagraph" style="margin-right: 0in; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman',serif;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-weight: bold;">HAL SPI&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">update</span></p></li><ul><li style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"></span><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">SPI interface is
<> 144:ef7eb2e8f9f7 1098 used in synchronous polling mode: at high clock rates like SPI prescaler 2 and
<> 144:ef7eb2e8f9f7 1099 4, calling <br>HAL_SPI_TransmitReceive() returns with error HAL_TIMEOUT</span></li><li style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"></span><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"><span style="font-style: italic;">HAL_SPI_TransmitReceive_DMA()</span> does not clean
<> 144:ef7eb2e8f9f7 1100 up the TX DMA, so any subsequent SPI calls return the DMA error</span></li><li style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"></span><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"><span style="font-style: italic;">HAL_SPI_Transmit_DMA()</span> is failing when data
<> 144:ef7eb2e8f9f7 1101 size is equal to 1 byte</span><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"><span style="font-style: italic;"><br></span></span>
<> 144:ef7eb2e8f9f7 1102 </li><li style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Add the following
<> 144:ef7eb2e8f9f7 1103 APIs used within the DMA process<o:p></o:p></span> </li></ul></ul>
<> 144:ef7eb2e8f9f7 1104 <ul style="font-style: italic;"><ul><ul><li style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">HAL_StatusTypeDef
<> 144:ef7eb2e8f9f7 1105 HAL_SPI_DMAPause(SPI_HandleTypeDef *hspi);<o:p></o:p></span></li></ul></ul></ul><ul style="font-style: italic;"><ul><ul><li style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">HAL_StatusTypeDef
<> 144:ef7eb2e8f9f7 1106 HAL_SPI_DMAResume(SPI_HandleTypeDef *hspi);<o:p></o:p></span></li></ul></ul></ul><ul style="font-style: italic;"><ul><ul><li style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">HAL_StatusTypeDef
<> 144:ef7eb2e8f9f7 1107 HAL_SPI_DMAStop(SPI_HandleTypeDef *hspi);<o:p></o:p></span></li></ul></ul></ul><ul style="font-style: italic;"><ul><ul><li style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">void
<> 144:ef7eb2e8f9f7 1108 HAL_SPI_TxHalfCpltCallback(SPI_HandleTypeDef *hspi);<o:p></o:p></span></li></ul></ul></ul><ul style="font-style: italic;"><ul><ul><li style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">void
<> 144:ef7eb2e8f9f7 1109 HAL_SPI_RxHalfCpltCallback(SPI_HandleTypeDef *hspi);</span><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"><span style="font-style: italic;"></span></span></li><li style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"><span style="font-style: italic;">void HAL_SPI_TxRxHalfCpltCallback(SPI_HandleTypeDef
<> 144:ef7eb2e8f9f7 1110 *hspi);</span></span></li></ul></ul></ul><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"><span style="font-style: italic;"><br></span></span><ul style="margin-bottom: 0in; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; margin-top: 0cm; list-style-type: square;"><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">HAL_SPI_TransmitReceive_DMA() update to remove the &nbsp;DMA Tx Error Callback initialization when SPI RxOnly mode is selected<br></span></li></ul><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Add use of UNUSED(tmpreg) in __HAL_SPI_CLEAR_MODFFLAG(), __HAL_SPI_CLEAR_OVRFLAG(), __HAL_SPI_CLEAR_FREFLAG() to<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">fix<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">"Unused variable" warning with TrueSTUDIO</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">.</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Rename Literals:<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">remove "D" from "</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">DISABLED" and "</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">ENABLED"</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">SPI_TIMODE_DISABLE<span style="font-weight: bold;">D</span>&nbsp;by SPI_TIMODE_DISABLE</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">SPI_TIMODE_ENABLE<span style="font-weight: bold;">D</span>&nbsp;by&nbsp;</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">SPI_TIMODE_ENABLE</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">SPI_CRCCALCULATION_DISABLE<span style="font-weight: bold;">D</span><span class="Apple-converted-space">&nbsp;</span>by &nbsp;SPI_CRCCALCULATION_DISABLE</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">SPI_CRCCALCULATION_ENABLE<span style="font-weight: bold;">D</span><span class="Apple-converted-space">&nbsp;</span>by &nbsp;SPI_CRCCALCULATION_ENABLE</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Add
<> 144:ef7eb2e8f9f7 1111 use of&nbsp;tmpreg variable in __HAL_SPI_CLEAR_MODFFLAG(),
<> 144:ef7eb2e8f9f7 1112 __HAL_SPI_CLEAR_FREFLAG() and __HAL_SPI_CLEAR_OVRFLAG() macros for</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">&nbsp;compliancy with C++</span></li></ul><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">HAL_SPI_Transmit_DMA()/HAL_SPI_Receive_DMA()/</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">HAL_SPI_TransmitReceive_DMA()</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span class="Apple-converted-space">&nbsp;</span>update to unlock the&nbsp;process before enabling the SPI peripheral</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 11pt; font-family: Calibri,sans-serif;" lang="EN-US">HAL_SPI_Transmit_DMA() update to manage correctly the DMA TX stream in SPI Full duplex mode</span></li></ul><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Section SPI_Exported_Functions_Group2&nbsp;update to<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana; color: black; font-size: 10pt;">remove duplication in *.chm UM</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Fix the wrong definition of HAL_SPI_ERROR_FLAG literal</span></li></ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"><span style="font-weight: bold;">HAL CRC </span>update</span></li><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;"><span style=""> </span></span><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">These macros are added to read/write the CRC IDR register: __HAL_CRC_SET_IDR() and __HAL_CRC_GET_IDR()</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">__HAL_CRC_SET_IDR() macro implementation change to use WRITE_REG() instead of MODIFY_REG()</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><p class="MsoListParagraph" style="margin-right: 0in; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman',serif;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-weight: bold;">HAL LL SDMMC<span class="Apple-converted-space">&nbsp;</span></span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">update</span></p></li><ul><li class="MsoNormal" style="margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">Use of CMSIS constants instead of magic values</span><br>
<> 144:ef7eb2e8f9f7 1113 <span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"></span></li><li class="MsoNormal" style="margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Miscellaneous update in functions internal coding</span></li></ul><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><p class="MsoNormal" style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman',serif;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">IS_SDIO_ALL_INSTANCE() &nbsp;macro moved to CMSIS files</span></p></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-weight: bold;">HAL NAND<span class="Apple-converted-space">&nbsp;</span></span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">update</span></li><ul><li class="MsoNormal" style="margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;; color: black;">Fix issue of macros returning wrong address for NAND blocks</span></li><li class="MsoNormal" style="margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;; color: black;">Fix issue for read/write NAND page/spare area</span></li></ul><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Rename NAND Address structure to NAND_AddressType<span style="font-weight: bold;">D</span>ef instead of NAND_AddressTypedef</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">Update the used algorithm of these functions</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">HAL_NAND_Read_Page()</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">HAL_NAND_Write_Page()</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">HAL_NAND_Read_SpareArea()</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">HAL_NAND_Write_SpareArea()</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><p class="MsoNormal" style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman',serif;"><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US">HAL_NAND_Write_Page(): move initialization of tickstart before while loop</span></p></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US">HAL_NAND_Erase_Block():<span class="Apple-converted-space">&nbsp;</span><span style="color: black;">add whait until NAND status is ready before exiting this function</span><br></span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-weight: bold;">HAL NOR<span class="Apple-converted-space">&nbsp;</span></span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">update</span></li><ul><li class="MsoNormal" style="margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;; color: black;">Add the NOR address
<> 144:ef7eb2e8f9f7 1114 bank macro used within the API</span><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;"><o:p></o:p></span><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;; color: black;"></span></li><li class="MsoNormal" style="margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;; color: black;">Update NOR API
<> 144:ef7eb2e8f9f7 1115 implementation to avoid the use of NOR address bank hard coded</span></li></ul><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">NOR Status literals renamed</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">NOR_SUCCESS by HAL_NOR_STATUS_SUCCESS</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">NOR_ONGOING by HAL_NOR_STATUS_ONGOING</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">NOR_ERROR by HAL_NOR_STATUS_ERROR<br></span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">NOR_TIMEOUT by HAL_NOR_STATUS_TIMEOUT</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><p class="MsoNormal" style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman',serif;"><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US">HAL_NOR_GetStatus() update to fix Timeout issue and&nbsp;</span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US">exit from waiting loop when timeout occurred<br></span></p></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-weight: bold;">HAL PCCARD<span class="Apple-converted-space">&nbsp;</span></span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">update</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Rename PCCARD Address structure to<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">HAL_PCCARD_StatusType<span style="font-weight: bold;">D</span>ef</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span class="Apple-converted-space">&nbsp;</span>instead of&nbsp;</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">CF_StatusTypedef</span></li></ul><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">PCCARD Status<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">literals</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span class="Apple-converted-space">&nbsp;</span>renamed</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">CF_SUCCESS by HAL_PCCARD_STATUS_SUCCESS</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">CF_ONGOING by HAL_PCCARD_STATUS_ONGOING</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">CF_ERROR by&nbsp;HAL_PCCARD_STATUS_ERROR<br></span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">CF_TIMEOUT by HAL_PCCARD_STATUS_TIMEOUT</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Update "CF" by "PCCARD" in&nbsp;functions, literals and macros</span></li></ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"><span style="font-weight: bold;">HAL HCD</span></span><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"><span style="font-weight: bold;"> </span>update</span></li><ul style="margin-top: 0cm;" type="circle"><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">HCD_StateTypeDef structure members renamed</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">These macro are renamed</span></li><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">__HAL_GET_FLAG(__HANDLE__, __INTERRUPT__)&nbsp;&nbsp;&nbsp; by __HAL_HCD_GET_FLAG(__HANDLE__, __INTERRUPT__)</span></li></ul><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">__HAL_CLEAR_FLAG(__HANDLE__, __INTERRUPT__) by __HAL_HCD_CLEAR_FLAG(__HANDLE__, __INTERRUPT__)&nbsp; <br>
<> 144:ef7eb2e8f9f7 1116 </span></li></ul><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">__HAL_IS_INVALID_INTERRUPT(__HANDLE__)&nbsp; by __HAL_HCD_IS_INVALID_INTERRUPT(__HANDLE__)&nbsp;</span></li></ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Update to use local variable&nbsp;in USB Host channel re-activation</span><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;"></span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-weight: bold;">HAL PCD<span class="Apple-converted-space">&nbsp;</span></span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">update</span></li><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">HAL_PCD_SetTxFiFo() and HAL_PCD_SetRxFiFo() renamed into </span><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">HAL_PCDEx_SetTxFiFo() and HAL_PCDEx_SetRxFiFo() and moved to the extension files stm32f2xx_hal_pcd_ex.h/.c<br>
<> 144:ef7eb2e8f9f7 1117 </span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">PCD_StateTypeDef structure members renamed</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">Fix incorrect masking of TxFIFOEmpty</span><br>
<> 144:ef7eb2e8f9f7 1118 <span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;"></span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">stm32f2xx_ll_usb.c: fix issue in HS mode<br>
<> 144:ef7eb2e8f9f7 1119 </span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">New macros added<br>
<> 144:ef7eb2e8f9f7 1120 </span></li><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">__HAL_PCD_IS_PHY_SUSPENDED()</span></li></ul><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">__HAL_USB_HS_EXTI_GENERATE_SWIT()</span></li></ul><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">__HAL_USB_FS_EXTI_GENERATE_SWIT()</span></li></ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">These macro are renamed</span></li><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">__HAL_GET_FLAG(__HANDLE__, __INTERRUPT__)&nbsp;&nbsp;&nbsp; by __HAL_PCD_GET_FLAG(__HANDLE__, __INTERRUPT__)</span></li></ul><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">__HAL_CLEAR_FLAG(__HANDLE__, __INTERRUPT__) by __HAL_PCD_CLEAR_FLAG(__HANDLE__, __INTERRUPT__)&nbsp; <br>
<> 144:ef7eb2e8f9f7 1121 </span></li></ul><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">__HAL_IS_INVALID_INTERRUPT(__HANDLE__)&nbsp; by __HAL_PCD_IS_INVALID_INTERRUPT(__HANDLE__)&nbsp; <br>
<> 144:ef7eb2e8f9f7 1122 </span></li></ul><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">__HAL_PCD_UNGATE_CLOCK(__HANDLE__) by __HAL_PCD_UNGATE_PHYCLOCK(__HANDLE__)</span></li></ul><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">__HAL_PCD_GATE_CLOCK(__HANDLE__) by __HAL_PCD_GATE_PHYCLOCK(__HANDLE__)</span></li></ul></ul><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Rename functions</span></li></ul><ul style="margin-bottom: 0in;"><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">HAL_PCD_<span style="font-weight: bold;">Active</span>RemoteWakeup() by HAL_PCD_<span style="font-weight: bold;">Activate</span>RemoteWakeup()</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">HAL_PCD_<span style="font-weight: bold;">DeActive</span>RemoteWakeup() by HAL_PCD_<span style="font-weight: bold;">DeActivate</span>RemoteWakeup()</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Rename literals</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">USB_FS_EXTI_TRIGGER_RISING_EDGE by USB_OTG_FS_WAKEUP_EXTI_RISING_EDGE</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">USB_FS_EXTI_TRIGGER_FALLING_EDGE by USB_OTG_FS_WAKEUP_EXTI_FALLING_EDGE</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">USB_FS_EXTI_TRIGGER_BOTH_EDGE() by USB_OTG_FS_WAKEUP_EXTI_RISING_FALLING_EDGE</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">USB_HS_EXTI_TRIGGER_RISING_EDGE by USB_OTG_HS_WAKEUP_EXTI_RISING_EDGE&nbsp;</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">USB_HS_EXTI_TRIGGER_FALLING_EDGE by USB_OTG_HS_WAKEUP_EXTI_FALLING_EDGE</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">USB_HS_EXTI_TRIGGER_BOTH_EDGE by USB_OTG_HS_WAKEUP_EXTI_RISING_FALLING_EDGE</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">USB_HS_EXTI_LINE_WAKEUP by USB_OTG_HS_WAKEUP_EXTI_LINE</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">USB_FS_EXTI_LINE_WAKEUP by USB_OTG_FS_WAKEUP_EXTI_LINE</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Rename</span><span style="font-size: 12pt; font-family: Symbol;"></span><span style="font-size: 12pt; font-family: 'Times New Roman',serif;" lang="EN-US"><span></span></span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US"><span class="Apple-converted-space">&nbsp;</span>USB EXTI macros</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-style: italic;">(FS,</span><span class="Apple-converted-space">&nbsp;</span><span style="font-style: italic;">HS<span class="Apple-converted-space">&nbsp;</span></span>referenced as<span class="Apple-converted-space">&nbsp;</span></span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US"><b>SUBBLOCK<span class="Apple-converted-space">&nbsp;</span></b></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">here below)<span style="font-style: italic;"></span></span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US"><o:p></o:p></span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">__HAL_USB_</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"></span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US"><b>SUBBLOCK</b></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">_EXTI_ENABLE_IT() &nbsp;by&nbsp; __HAL_USB_OTG_</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"></span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US"><b>SUBBLOCK</b></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">_WAKEUP_EXTI_ENABLE_IT()&nbsp;&nbsp;<o:p></o:p></span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">__HAL_USB_</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"></span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US"><b>SUBBLOCK</b></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">_EXTI_DISABLE_IT() by&nbsp;__HAL_USB_OTG_</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"></span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US"><b>SUBBLOCK</b></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">_WAKEUP_EXTI_DISABLE_IT()<o:p></o:p></span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">__HAL_USB_</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"></span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US"><b>SUBBLOCK</b></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">_EXTI_GET_FLAG() by&nbsp;__HAL_USB_OTG_</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"></span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US"><b>SUBBLOCK</b></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">_WAKEUP_EXTI_GET_FLAG()&nbsp;<o:p></o:p></span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">__HAL_USB_</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"></span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US"><b>SUBBLOCK</b></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">_EXTI_CLEAR_FLAG() by&nbsp;__HAL_USB_OTG_</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"></span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US"><b>SUBBLOCK</b></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">_WAKEUP_EXTI_CLEAR_FLAG()<o:p></o:p></span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">__HAL_USB_</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"></span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US"><b>SUBBLOCK</b></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">_EXTI_SET_RISING_EGDE_TRIGGER() by&nbsp;__HAL_USB_OTG_</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"></span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US"><b>SUBBLOCK</b></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">_WAKEUP_EXTI_ENABLE_RISING_EDGE()<o:p></o:p></span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">__HAL_USB_</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"></span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US"><b>SUBBLOCK</b></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">_EXTI_SET_FALLING_EGDE_TRIGGER() by __HAL_USB_OTG_</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"></span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US"><b>SUBBLOCK</b></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">_WAKEUP_EXTI_ENABLE_FALLING_EDGE()<o:p></o:p></span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">__HAL_USB_</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"></span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US"><b>SUBBLOCK</b></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">_EXTI_SET_FALLINGRISING_TRIGGER() by&nbsp;__HAL_USB_OTG_</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"></span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US"><b>SUBBLOCK</b></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">_WAKEUP_EXTI_ENABLE_RISING_FALLING_EDGE()<o:p></o:p></span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">__HAL_USB_</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"></span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US"><b>SUBBLOCK</b></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">_EXTI_GENERATE_SWIT()&nbsp; by&nbsp;__HAL_USB_OTG_</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"></span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US"><b>SUBBLOCK</b></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">_WAKEUP_EXTI_GENERATE_SWIT()</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">HAL_PCD_IRQHandler API: fix the bad Configuration of Turnaround Time</span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">&nbsp;&nbsp;&nbsp;</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="Apple-converted-space">&nbsp;</span><br><span style="font-family: Verdana,sans-serif; font-size: 10pt;"></span></li></ul></ul><ul style="margin-bottom: 0in; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; margin-top: 0cm; list-style-type: square;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-weight: bold;">HAL RNG<span class="Apple-converted-space">&nbsp;</span></span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">update</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;">Add new functions</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><p class="MsoNormal" style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman',serif;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;">HAL_RNG_GenerateRandomNumber(): to generate a 32-bits random number,</span><span class="Apple-converted-space">&nbsp;</span><span style="font-size: 10pt; font-family: Verdana,sans-serif;">return random value in argument and return HAL status.</span></p></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><p class="MsoNormal" style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman',serif;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;">HAL_RNG_GenerateRandomNumber_IT():<span class="Apple-converted-space">&nbsp;</span></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;">to &nbsp;start generation of the&nbsp;32-bits random number</span><span style="font-size: 10pt; font-family: Verdana,sans-serif;">, user should call the&nbsp;</span><span style="font-size: 10pt; font-family: Verdana,sans-serif;">HAL_RNG_ReadLastRandomNumber() function under the<span class="Apple-converted-space">&nbsp;</span></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;">HAL_RNG_ReadyCallback()</span><span style="font-size: 10pt; font-family: Verdana,sans-serif;"><span class="Apple-converted-space">&nbsp;</span>to get the generated random value.</span></p></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><p class="MsoNormal" style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman',serif;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;">HAL_RNG_ReadLastRandomNumber():&nbsp;to return the last random value stored in the RNG handle</span></p></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;">HAL_RNG_GetRandomNumber():<span class="Apple-converted-space">&nbsp;</span></span><span style="font-size: 10pt; font-family: Verdana,sans-serif;">return value update (obsolete), replaced by HAL_RNG_GenerateRandomNumber()</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><p class="MsoNormal" style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman',serif;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;">HAL_RNG_GetRandomNumber_IT(): wrong implementation (obsolete), replaced by&nbsp;HAL_RNG_GenerateRandomNumber_IT()</span></p></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><p class="MsoNormal" style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman',serif;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;">__HAL_RNG_CLEAR_FLAG() macro (obsolete), replaced by new __HAL_RNG_CLEAR_IT() macro</span></p></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;">Add new define for&nbsp;RNG ready interrupt:&nbsp; RNG_IT_DRDY</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-weight: bold;">HAL RTC<span class="Apple-converted-space">&nbsp;</span></span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">update</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;" lang="EN-US">Update HAL_RTCEx_SetWakeUpTimer() and HAL_RTCEx_SetWakeUpTimer_IT() functions to properly check on the WUTWF flag</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-style: italic;"></span></span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-style: italic;">HAL_RTC_GetTime() and HAL_RTC_GetDate(): add the comment below<br></span></span></li></ul></ul><div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; margin-left: 40px;"><div style="margin-left: 40px;"><font size="-2"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-style: italic;">&nbsp; * @note You must call HAL_RTC_GetDate() after HAL_RTC_GetTime() to unlock the values<span class="Apple-converted-space">&nbsp;</span></span></span></font><font size="-1"><br><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-style: italic;">&nbsp; * in the higher-order calendar shadow registers to ensure consistency between the time and date values.</span></span><br><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-style: italic;">&nbsp; * Reading RTC current time locks the values in calendar shadow registers until Current date is read.&nbsp;</span></span></font><br></div><span style="font-family: Verdana,sans-serif; font-size: 10pt;"></span></div><ul style="margin-bottom: 0in; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; margin-top: 0cm; list-style-type: square;"><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Rename literals: add prefix "__HAL"</span></li></ul><ul style="margin-bottom: 0in;"><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">FORMAT_BIN&nbsp;by RTC_FORMAT_BIN</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"></span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">FORMAT_BCD by RTC_FORMAT_BCD</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Rename macros<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-style: italic;">(ALARM,</span><span class="Apple-converted-space">&nbsp;</span>WAKEUPTIMER and<span class="Apple-converted-space">&nbsp;</span><span style="font-style: italic;">TIMESTAMP<span class="Apple-converted-space">&nbsp;</span></span>referenced as<span class="Apple-converted-space">&nbsp;</span></span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US"><b>SUBBLOCK<span class="Apple-converted-space">&nbsp;</span></b></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">here below)<span style="font-style: italic;"></span></span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US">__HAL_RTC_EXTI_ENABLE_IT() by&nbsp; __HAL_RTC</span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US">_<b>SUBBLOCK</b>_</span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US">EXTI_ENABLE_IT()</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US">__HAL_RTC_EXTI_DISABLE_IT() by&nbsp; __HAL_RTC</span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US">_<b>SUBBLOCK</b>_</span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US">EXTI_DISABLE_IT()</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><p class="MsoNormal" style="margin: 4.5pt 0cm; font-size: 12pt; font-family: 'Times New Roman',serif;"><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US">__HAL_RTC_EXTI_CLEAR_FLAG() by&nbsp; __HAL_RTC_<b>SUBBLOCK</b>_EXTI_CLEAR_FLAG()</span></p></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US">__HAL_RTC_EXTI_GENERATE_SWIT() by<span class="Apple-converted-space">&nbsp;</span></span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US">__HAL_RTC</span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US">_<b>SUBBLOCK</b>_</span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US">EXTI_GENERATE_SWIT()</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Add new macros<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-style: italic;">(ALARM,</span><span class="Apple-converted-space">&nbsp;</span>WAKEUPTIMER and<span class="Apple-converted-space">&nbsp;</span><span style="font-style: italic;">TAMPER_TIMESTAMP<span class="Apple-converted-space">&nbsp;</span></span>referenced as<span class="Apple-converted-space">&nbsp;</span></span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US"><b>SUBBLOCK<span class="Apple-converted-space">&nbsp;</span></b></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">here below)<span style="font-style: italic;"></span></span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US">__HAL_RTC_</span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US"><b>SUBBLOCK</b>_</span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US">GET_IT_SOURCE()&nbsp;</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US">__HAL_RTC</span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US">_</span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US"><b>SUBBLOCK</b>_</span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US"></span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US">EXTI_ENABLE_EVENT()</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US">__HAL_RTC</span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US">_</span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US"><b>SUBBLOCK</b>_</span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US"></span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US">EXTI_DISABLE_EVENT()</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US">__HAL_RTC_</span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US"><b>SUBBLOCK</b></span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US">_EXTI_ENABLE_FALLING_EDGE()</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US">__HAL_RTC_</span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US"></span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US"><b>SUBBLOCK</b></span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US">_</span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US">EXTI_DISABLE_FALLING_EDGE()</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US">__HAL_RTC_</span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US"></span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US"><b>SUBBLOCK</b></span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US">_</span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US">EXTI_ENABLE_RISING_EDGE()</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US">__HAL_RTC_</span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US"></span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US"><b>SUBBLOCK</b></span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US">_</span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US">EXTI_DISABLE_RISING_EDGE()</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US">&nbsp;__HAL_RTC_</span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US"><b>SUBBLOCK</b></span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US">_</span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US">EXTI_ENABLE_RISING_FALLING_EDGE()</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US">&nbsp;__HAL_RTC_</span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US"><b>SUBBLOCK</b></span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US">_</span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US">EXTI_DISABLE_RISING_FALLING_EDGE()</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US">&nbsp;__HAL_RTC_</span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US"></span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US"><b>SUBBLOCK</b></span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US">_</span><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;" lang="EN-US">EXTI_GET_FLAG()</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">Update to use&nbsp;CMSIS mask definition instead of hardcoded values (</span><span style="font-family: helvetica,arial,sans-serif; font-size: 11.7px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 20px; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; float: none; color: rgb(7, 7, 7); display: inline ! important; background-color: rgb(255, 255, 255);">EXTI_IMR_IM17, EXTI_IMR_IM19..</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">)</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">__HAL_RTC_TAMPER_TIMESTAMP_EXTI_GET_FLAG() macro: fix implementation issue</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">__HAL_RTC_ALARM_GET_IT(),
<> 144:ef7eb2e8f9f7 1123 __HAL_RTC_ALARM_CLEAR_FLAG(), __HAL_RTC_WAKEUPTIMER_CLEAR_FLAG(),
<> 144:ef7eb2e8f9f7 1124 __HAL_RTC_TIMESTAMP_CLEAR_FLAG() and __HAL_RTC_TAMPER_CLEAR_FLAG()
<> 144:ef7eb2e8f9f7 1125 macros implementation changed: remove unused cast</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">IS_RTC_TAMPER() macro: update to use literal instead of hardcoded value&nbsp;</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Update to define&nbsp;</span><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">hardware </span><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"></span><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,sans-serif; color: black;" lang="EN-US">independent l</span><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">iterals names</span><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,sans-serif; color: black;" lang="EN-US"></span><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">:</span></li><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Rename RTC_TAMPERPIN_PC13 by &nbsp;RTC_TAMPERPIN_DEFAULT</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Rename RTC_TAMPERPIN_PA0 by RTC_TAMPERPIN_POS1</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Rename RTC_TAMPERPIN_PI8 by RTC_TAMPERPIN_POS1</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Rename RTC_TIMESTAMPPIN_PC13 by RTC_TIMESTAMPPIN_DEFAULT</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Rename RTC_TIMESTAMPPIN_PA0 by RTC_TIMESTAMPPIN_POS1</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Rename RTC_TIMESTAMPPIN_PI8 by RTC_TIMESTAMPPIN_POS1</span></li></ul></ul></ul><span style="color: rgb(0, 0, 0); font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; font-family: Verdana,sans-serif; font-size: 10pt;"></span><ul style="margin-bottom: 0in; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; margin-top: 0cm; list-style-type: square;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-weight: bold;">HAL SD<span class="Apple-converted-space">&nbsp;</span></span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">update</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Rename SD_CMD_SD_APP_STAUS&nbsp;by&nbsp;</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">SD_CMD_SD_APP_STA<span style="font-weight: bold;">T</span>US</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-style: italic; color: black;">SD_PowerON()<span class="Apple-converted-space">&nbsp;</span></span><span style="color: black;">updated to add 1ms required power up waiting time before starting the SD initialization sequence</span><br></span></li></ul><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-style: italic;">SD_DMA_RxCplt()/SD_DMA_TxCplt():<span class="Apple-converted-space">&nbsp;</span></span>add a call to HAL_DMA_Abort()</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-style: italic;">HAL_SD_ReadBlocks()<span class="Apple-converted-space">&nbsp;</span></span>update to set&nbsp;the&nbsp;defined DATA_BLOCK_SIZE as SDIO DataBlockSize parameter</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">HAL_SD_ReadBlocks_DMA()/</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">HAL_SD_WriteBlocks_DMA() update to call the<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">HAL_DMA_Start_IT() function with</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">DMA&nbsp;Datalength set to BlockSize/4&nbsp;<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">as the DMA&nbsp;is configured&nbsp;in word&nbsp;</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-weight: bold;">HAL SMARTCARD<span class="Apple-converted-space">&nbsp;</span></span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">update</span>&nbsp;</li></ul><ul><ul><li style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Add specific macros
<> 144:ef7eb2e8f9f7 1126 to manage the flags cleared only by a software sequence</span>
<> 144:ef7eb2e8f9f7 1127 <ul><li style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">__HAL_SMARTCARD_CLEAR_PEFLAG()<o:p></o:p></span>
<> 144:ef7eb2e8f9f7 1128 </li></ul>
<> 144:ef7eb2e8f9f7 1129 <ul><li style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">__HAL_SMARTCARD_CLEAR_FEFLAG()<o:p></o:p></span>
<> 144:ef7eb2e8f9f7 1130 </li></ul>
<> 144:ef7eb2e8f9f7 1131 <ul><li style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">__HAL_SMARTCARD_CLEAR_NEFLAG()<o:p></o:p></span>
<> 144:ef7eb2e8f9f7 1132 </li></ul>
<> 144:ef7eb2e8f9f7 1133 <ul><li style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">__HAL_SMARTCARD_CLEAR_OREFLAG()<o:p></o:p></span>
<> 144:ef7eb2e8f9f7 1134 </li></ul>
<> 144:ef7eb2e8f9f7 1135 <ul><li style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"><span style="font-style: italic;">__HAL_SMARTCARD_CLEAR_IDLEFLAG()</span><o:p></o:p></span>
<> 144:ef7eb2e8f9f7 1136 </li></ul>
<> 144:ef7eb2e8f9f7 1137 </li></ul><ul><li style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Add several
<> 144:ef7eb2e8f9f7 1138 enhancements without affecting the driver functionalities</span>
<> 144:ef7eb2e8f9f7 1139 <ul><li style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Add a new state
<> 144:ef7eb2e8f9f7 1140 <span style="font-style: italic;">HAL_SMARTCARD_STATE_BUSY_TX_RX</span> and all
<> 144:ef7eb2e8f9f7 1141 processes has been updated accordingly</span> </li></ul>
<> 144:ef7eb2e8f9f7 1142 <ul><li><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Update
<> 144:ef7eb2e8f9f7 1143 <span style="font-style: italic;">HAL_SMARTCARD_Transmit_IT()</span> to enable
<> 144:ef7eb2e8f9f7 1144 <span style="font-style: italic;">SMARTCARD_IT_TXE</span> instead of <span style="font-style: italic;">SMARTCARD_IT_TC</span></span>
<> 144:ef7eb2e8f9f7 1145 </li></ul></li></ul></ul><ul style="margin-bottom: 0in; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; margin-top: 0cm; list-style-type: square;"><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">DMA
<> 144:ef7eb2e8f9f7 1146 transmit process; the code has been updated to avoid waiting on TC flag
<> 144:ef7eb2e8f9f7 1147 under DMA ISR, SMARTCARD TC interrupt is used instead. Below the update
<> 144:ef7eb2e8f9f7 1148 to be done on user application:</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Configure and enable the USART IRQ in HAL_SAMRTCARD_MspInit() function</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">In<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">stm32f2xx_it.c file,<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">UASRTx_IRQHandler() function:<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">add a call to HAL_SMARTCARD_IRQHandler() function</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">IT transmit process; the code has been updated to avoid waiting on TC flag under SMARTCARD ISR,&nbsp;</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">SMARTCARD</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span class="Apple-converted-space">&nbsp;</span>TC interrupt is used instead. No impact on user application</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Rename macros: add prefix "__HAL"</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">__SMARTCARD_ENABLE() by __HAL_SMARTCARD_ENABLE()</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">__SMARTCARD_DISABLE() by __HAL_SMARTCARD_DISABLE()</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">__SMARTCARD_ENABLE_IT() by __HAL_SMARTCARD_ENABLE_IT()</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">__SMARTCARD_DISABLE_IT() by __HAL_SMARTCARD_DISABLE_IT()</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">__SMARTCARD_DMA_REQUEST_ENABLE() by<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">__HAL_SMARTCARD_DMA_REQUEST_ENABLE()</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">__SMARTCARD_DMA_REQUEST_DISABLE() by<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">__HAL_SMARTCARD_DMA_REQUEST_DISABLE()</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Rename literals:<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">remove "D" from "</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">DISABLED" and "</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">ENABLED"</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">SMARTCARD_NACK_ENABLED&nbsp;by SMARTCARD_NACK_ENABLE</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">SMARTCARD_NACK_DISABLED&nbsp;by&nbsp;</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">SMARTCARD_NACK_DISABLE</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Add new user macros to manage the sample method feature</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">__HAL_</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">SMARTCARD</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">_ONE_BIT_SAMPLE_ENABLE()</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">__HAL_</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">SMARTCARD</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">_ONE_BIT_SAMPLE_DISABLE()</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Add use of&nbsp;tmpreg variable in __HAL_SMARTCARD_CLEAR_PEFLAG() macro for</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">&nbsp;compliancy with C++</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-style: italic;">HAL_</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">SMARTCARD</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-style: italic;">_Transmit_DMA()<span class="Apple-converted-space">&nbsp;</span></span>update to follow the right&nbsp;</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">procedure</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span class="Apple-converted-space">&nbsp;</span>"Transmission using DMA"&nbsp; in the reference manual</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Add clear the TC flag in the SR register before enabling the DMA&nbsp;transmit request</span></li></ul><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">HAL_SMARTCARD_Transmit_IT() update to force the disable for the ERR interrupt to avoid the OVR interrupt</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">HAL_SMARTCARD_IRQHandler() update&nbsp;check condition<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">for&nbsp;transmission end</span></li></ul><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">Clean up: remove the&nbsp;following literals that aren't used in smartcard mode</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 11pt; font-family: Calibri,sans-serif; color: black;" lang="EN-US">SMARTCARD_PARITY_NONE</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 11pt; font-family: Calibri,sans-serif; color: black;" lang="EN-US">SMARTCARD_WORDLENGTH_8B</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 11pt; font-family: Calibri,sans-serif; color: black;" lang="EN-US">SMARTCARD_STOPBITS_1</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 11pt; font-family: Calibri,sans-serif; color: black;" lang="EN-US">SMARTCADR_STOPBITS_2</span></li></ul></ul></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-weight: bold;">HAL TIM<span class="Apple-converted-space">&nbsp;</span></span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">update</span></li><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">HAL_TIM_IRQHandler(): </span><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">update to check the input capture channel 3 and 4 in CCMR2 instead of CCMR1</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">__HAL_TIM_SET_PRESCALER() updated to use '=' instead of '|='<br>
<> 144:ef7eb2e8f9f7 1149 </span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"></span><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;"> Add the
<> 144:ef7eb2e8f9f7 1150 following macro in TIM HAL driver</span></li><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">__HAL_TIM_GET_COMPARE() <o:p></o:p></span></li></ul><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">__HAL_TIM_GET_COUNTER() <o:p></o:p></span></li></ul><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">__HAL_TIM_GET_AUTORELOAD() <o:p></o:p></span></li></ul><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">__HAL_TIM_GET_CLOCKDIVISION() <o:p></o:p></span></li></ul><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;"><span style="font-style: italic;">__HAL_TIM_GET_ICPRESCALER()</span></span></li></ul></ul><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">Add TIM_CHANNEL_ALL as possible value for a</span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">ll Encoder Start/Stop APIs Description</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">HAL_TIM_OC_ConfigChannel() remove call to IS_TIM_FAST_STATE() assert macro</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">HAL_TIM_PWM_ConfigChannel()</span><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US"><span class="Apple-converted-space">&nbsp;</span>add a call to IS_TIM_FAST_STATE() assert macro to check the OCFastMode parameter</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">TIM_DMADelayPulseCplt() Update to set the TIM Channel before to call&nbsp; HAL_TIM_PWM_PulseFinishedCallback()</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">TIM_DMACaptureCplt() update to set the TIM Channel before to call&nbsp; HAL_TIM_IC_CaptureCallback()</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">HAL_TIM_IC_ConfigChannel()&nbsp;update to fix Timer CCMR1 register corruption when setting ICFilter parameter</span><span style="font-size: 8pt; font-family: &quot;Verdana&quot;,sans-serif; color: rgb(0, 176, 80);" lang="EN-US"></span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">HAL_TIM_DMABurst_WriteStop()/HAL_TIM_DMABurst_ReadStop() update to abort the DMA transfer for the specific TIM channel</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">Add new function for TIM Slave configuration&nbsp;in IT mode:<span class="Apple-converted-space">&nbsp;</span><span style="font-style: italic;">HAL_TIM_SlaveConfigSynchronization_IT()&nbsp;</span></span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">HAL_TIMEx_ConfigBreakDeadTime() add an assert check on Break &amp; DeadTime parameters values</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US">HAL_TIMEx_OCN_Start_IT() add the enable of Break Interrupt for all output modes</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Add new macros to ENABLE/DISABLE URS bit in TIM CR1 register:</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">__HAL_TIM_URS_ENABLE()</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">__HAL_TIM_URS_DISABLE()</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Add new macro for TIM Edge modification</span>:<span style="font-size: 10pt; font-family: Verdana,sans-serif;" lang="EN-US"><span style="font-style: italic;"><span class="Apple-converted-space">&nbsp;</span>__HAL_TIM_SET_CAPTUREPOLARITY()</span></span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-weight: bold;">HAL UART<span class="Apple-converted-space">&nbsp;</span></span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">update</span></li><ul><li><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Add new macros to control CTS and RTS</span><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"><br></span>
<> 144:ef7eb2e8f9f7 1151 </li><li style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Add specific macros
<> 144:ef7eb2e8f9f7 1152 to manage the flags cleared only by a software sequence<o:p></o:p></span>
<> 144:ef7eb2e8f9f7 1153 <ul style="font-style: italic;"><li style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">__HAL_UART_CLEAR_PEFLAG()<o:p></o:p></span>
<> 144:ef7eb2e8f9f7 1154 </li></ul>
<> 144:ef7eb2e8f9f7 1155 <ul style="font-style: italic;"><li style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">__HAL_UART_CLEAR_FEFLAG()<o:p></o:p></span>
<> 144:ef7eb2e8f9f7 1156 </li></ul>
<> 144:ef7eb2e8f9f7 1157 <ul style="font-style: italic;"><li style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">__HAL_UART_CLEAR_NEFLAG()<o:p></o:p></span>
<> 144:ef7eb2e8f9f7 1158 </li></ul>
<> 144:ef7eb2e8f9f7 1159 <ul style="font-style: italic;"><li style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">__HAL_UART_CLEAR_OREFLAG()<o:p></o:p></span><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"></span>
<> 144:ef7eb2e8f9f7 1160 </li><li style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">__HAL_UART_CLEAR_IDLEFLAG()</span>
<> 144:ef7eb2e8f9f7 1161 </li></ul>
<> 144:ef7eb2e8f9f7 1162 </li><li style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"></span><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Remove the check on
<> 144:ef7eb2e8f9f7 1163 RXNE set after reading the Data in the DR register</span>
<> 144:ef7eb2e8f9f7 1164 </li></ul><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><p class="MsoNormal" style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman',serif;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;">Add&nbsp;IS_UART_LIN_WORD_LENGTH() and IS_UART_LIN_OVERSAMPLING()&nbsp;</span><span style="font-size: 10pt; font-family: Verdana,sans-serif;"><span class="Apple-converted-space">&nbsp;</span>macros:</span><span style="font-size: 10pt; font-family: Verdana,sans-serif;"><span class="Apple-converted-space">&nbsp;</span>to check respectively WordLength and OverSampling parameters in LIN mode</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-style: italic;"></span></span></p></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><p class="MsoNormal" style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman',serif;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-style: italic;"></span>DMA
<> 144:ef7eb2e8f9f7 1165 transmit process; the code has been updated to avoid waiting on TC flag
<> 144:ef7eb2e8f9f7 1166 under DMA ISR, UART TC interrupt is used instead. Below the update to
<> 144:ef7eb2e8f9f7 1167 be done on user application:</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"></span></p></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Configure and enable the USART IRQ in HAL_UART_MspInit() function</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">In<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">stm32f2xx_it.c file,<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">USARTx_IRQHandler() function:<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">add a call to HAL_UART_IRQHandler() function</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">IT transmit process; the code has been updated to avoid waiting on TC flag under UART&nbsp;ISR, UART</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span class="Apple-converted-space">&nbsp;</span>TC interrupt is used instead. No impact on user application</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Rename macros:</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">__HAL_UART_ONEBIT_ENABLE() by __HAL_UART_ONE_BIT_SAMPLE_ENABLE()</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">__HAL_UART_ONEBIT_DISABLE() by __HAL_UART_ONE_BIT_SAMPLE_DISABLE()</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Rename literals:</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">UART_WAKEUPMETHODE_IDLELINE&nbsp;by UART_WAKEUPMETHOD_IDLELINE</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">UART_WAKEUPMETHODE_ADDRESSMARK&nbsp;by UART_WAKEUPMETHOD_ADDRESSMARK</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Add use of&nbsp;tmpreg variable in __HAL_UART_CLEAR_PEFLAG() macro for</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">&nbsp;compliancy with C++</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-style: italic;">HAL_UART_Transmit_DMA()<span class="Apple-converted-space">&nbsp;</span></span>update to follow the right<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">procedure<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">"Transmission using DMA" in the reference manual</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Add clear the TC flag in the SR register before enabling the DMA&nbsp;transmit request<br></span></li></ul></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-weight: bold;">HAL USART<span class="Apple-converted-space">&nbsp;</span></span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">update</span></li><ul><li style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Add specific macros
<> 144:ef7eb2e8f9f7 1168 to manage the flags cleared only by a software sequence</span>
<> 144:ef7eb2e8f9f7 1169 <ul style="font-style: italic;"><li style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">__HAL_USART_CLEAR_PEFLAG()<o:p></o:p></span>
<> 144:ef7eb2e8f9f7 1170 </li></ul>
<> 144:ef7eb2e8f9f7 1171 <ul style="font-style: italic;"><li style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">__HAL_USART_CLEAR_FEFLAG()<o:p></o:p></span>
<> 144:ef7eb2e8f9f7 1172 </li></ul>
<> 144:ef7eb2e8f9f7 1173 <ul style="font-style: italic;"><li style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">__HAL_USART_CLEAR_NEFLAG()<o:p></o:p></span>
<> 144:ef7eb2e8f9f7 1174 </li></ul>
<> 144:ef7eb2e8f9f7 1175 <ul style="font-style: italic;"><li style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">__HAL_USART_CLEAR_OREFLAG()<o:p></o:p></span>
<> 144:ef7eb2e8f9f7 1176 </li></ul>
<> 144:ef7eb2e8f9f7 1177 <ul><li style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;" class="MsoNormal"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;"><span style="font-style: italic;">__HAL_USART_CLEAR_IDLEFLAG()</span></span> </li></ul>
<> 144:ef7eb2e8f9f7 1178 </li></ul><ul><li><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Update
<> 144:ef7eb2e8f9f7 1179 <span style="font-style: italic;">HAL_USART_Transmit_IT()</span> to enable <span style="font-style: italic;">USART_IT_TXE</span> instead of <span style="font-style: italic;">USART_IT_TC</span></span></li></ul><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><p class="MsoNormal" style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman',serif;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-style: italic;"></span>DMA
<> 144:ef7eb2e8f9f7 1180 transmit process; the code has been updated to avoid waiting on TC flag
<> 144:ef7eb2e8f9f7 1181 under DMA ISR, USART TC interrupt is used instead. Below the update to
<> 144:ef7eb2e8f9f7 1182 be done on user application:</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"></span></p></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Configure and enable the USART IRQ in HAL_USART_MspInit() function</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">In<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">stm32f2xx_it.c file,<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">USARTx_IRQHandler() function:<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">add a call to HAL_USART_IRQHandler() function</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">IT transmit process; the code has been updated to avoid waiting on TC flag under USART&nbsp;ISR, USART</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span class="Apple-converted-space">&nbsp;</span>TC interrupt is used instead. No impact on user application</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-style: italic;">HAL_USART_Init()</span><span class="Apple-converted-space">&nbsp;</span>update to&nbsp;enable the USART oversampling by 8 by default in order to<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">reach max USART frequencies</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">USART_DMAReceiveCplt()&nbsp;update to set the new USART state after checking on the old&nbsp;state</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-style: italic;">HAL_USART_Transmit_DMA()/HAL_USART_TransmitReceive_DMA()<span class="Apple-converted-space">&nbsp;</span></span>update to follow the right&nbsp;</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">procedure</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span class="Apple-converted-space">&nbsp;</span>"Transmission using DMA"&nbsp; in the reference manual</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Add clear the TC flag in the SR register before enabling the DMA&nbsp;transmit request</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Rename macros:</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">__USART_ENABLE() by __HAL_USART_ENABLE()</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">__USART_DISABLE() by __HAL_USART_DISABLE()</span></li></ul><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">__USART_ENABLE_IT() by __HAL_USART_ENABLE_IT()</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">__USART_DISABLE_IT() by __HAL_USART_DISABLE_IT()</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Rename literals:<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">remove "D" from "</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">DISABLED" and "</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">ENABLED"</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">USART_CLOCK_DISABLED&nbsp;by USART_CLOCK_DISABLE</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">USART_CLOCK_ENABLED&nbsp;by USART_CLOCK_ENABLE</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">USARTNACK_ENABLED by USART_NACK_ENABLE</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">USARTNACK_DISABLED by USART_NACK_DISABLE</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Add new user macros to manage the sample method feature</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">__HAL_USART_ONE_BIT_SAMPLE_ENABLE()</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">__HAL_USART_ONE_BIT_SAMPLE_DISABLE()<br></span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Add use of&nbsp;tmpreg variable in __HAL_USART_CLEAR_PEFLAG() macro for</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">&nbsp;compliancy with C++</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;" lang="EN-US">HAL_USART_Init() fix USART baud rate&nbsp;configuration issue: USART baud rate is twice Higher than expected</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-weight: bold;">HAL WWDG<span class="Apple-converted-space">&nbsp;</span></span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">update</span></li><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">Update macro parameters to use underscore: __XXX__</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">Use of CMSIS constants instead of magic values<br>
<> 144:ef7eb2e8f9f7 1183 </span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">Use MODIFY_REG macro in HAL_WWDG_Init()</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">Add IS_WWDG_ALL_INSTANCE in HAL_WWDG_Init() and HAL_WWDG_DeInit()</span></li></ul><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Add new parameter in __HAL_WWDG_ENABLE_IT() macro</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"></span></li></ul><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Add new macros to manage WWDG IT &amp; correction:</span></li></ul><ul style="margin-bottom: 0in;"><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">__HAL_WWDG_DISABLE()</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;"></span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">__HAL_WWDG_DISABLE_IT()</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">__HAL_WWDG_GET_IT()</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">__HAL_WWDG_GET_IT_SOURCE()</span></li></ul></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-weight: bold;">HAL IWDG<span class="Apple-converted-space">&nbsp;</span></span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">update</span></li><ul><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">Use WRITE_REG instead of SET_BIT for all IWDG macros</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">__HAL_IWDG_CLEAR_FLAG removed: no IWDG flag cleared by access to SR register</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">Use MODIFY_REG macro in HAL_IWDG_Init()</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">Add</span><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">&nbsp;IS_IWDG_ALL_INSTANCE in HAL_IWDG_Init()</span></li></ul><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;">Rename the defined IWDG keys:&nbsp;</span></li></ul><ul style="margin-bottom: 0in;"><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;">KR_KEY_RELOAD by IWDG_KEY_RELOAD</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;">KR_KEY_ENABLE by IWDG_KEY_ENABLE</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;">KR_KEY_EWA by IWDG_KEY_WRITE_ACCESS_ENABLE</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;">KR_KEY_DWA by IWDG_KEY_WRITE_ACCESS_DISABLE<br></span></li></ul></ul><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;">&nbsp;<span style="font-size: 10pt; font-family: Verdana,sans-serif;">Add new macro: __HAL_IWDG_RESET_HANDLE_STATE()</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana,sans-serif;">Update&nbsp;IWDG_ENABLE_WRITE_ACCESS() and&nbsp;IWDG_DISABLE_WRITE_ACCESS() as private macro</span></li></ul></ul><ul style="margin-bottom: 0in; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; margin-top: 0cm;" type="square"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-weight: bold;">HAL LL FSMC<span class="Apple-converted-space">&nbsp;</span></span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">update</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Add WriteFifo and PageSize fields in the FSMC_NORSRAM_InitTypeDef structure</span></li><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Update FSMC_NORSRAM_Init(), FSMC_NORSRAM_DeInit() and&nbsp;FSMC_NORSRAM_Extended_Timing_Init()&nbsp;functions</span></li></ul><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;"><span style="font-weight: bold;">HAL LL USB<span class="Apple-converted-space">&nbsp;</span></span></span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">update</span></li><ul style="margin-bottom: 0in;"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Update USB_HostInit() and USB_DevInit() functions to support the VBUS Sensing B activation</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">USB_FlushTxFifo&nbsp;API: update to flush all Tx FIFO</span></li><li class="MsoNormal" style="color: black; margin-top: 4.5pt; margin-bottom: 4.5pt;"><span style="font-family: 'Verdana','sans-serif'; font-size: 10pt;">Update to use local variable&nbsp;in USB Host channel re-activation</span><b><u><span style="font-size: 10pt; font-family: Verdana,sans-serif; color: black;"></span></u></b><span style="font-size: 12pt; font-family: 'Times New Roman',serif;"><o:p></o:p></span></li></ul></ul><h3 style="background: rgb(51, 102, 255) none repeat scroll 0% 50%; -moz-background-clip: initial; -moz-background-origin: initial; -moz-background-inline-policy: initial; margin-right: 500pt; width: 200px;"><span style="font-size: 10pt; font-family: Arial; color: white;">V1.0.1 / 25-March-2014</span></h3><ul><li><small><span style="font-family: Verdana;">Patch release : moved macros related to RNG from hal_rcc_ex.h to hal_rcc.h as RNG is present in all versions of the STM32F2</span></small></li></ul><h3 style="background: rgb(51, 102, 255) none repeat scroll 0% 50%; -moz-background-clip: initial; -moz-background-origin: initial; -moz-background-inline-policy: initial; margin-right: 500pt; width: 200px;"><span style="font-size: 10pt; font-family: Arial; color: white;">V1.0.0 / 07-March-2014</span></h3><p class="MsoNormal" style="margin: 4.5pt 0cm 4.5pt 18pt;"><b><u><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;; color: black;">Main Changes</span></u></b></p><ul style="margin-bottom: 0in; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; margin-top: 0cm;" type="square"><li class="MsoNormal" style="margin: 4.5pt 0in; font-size: 12pt; font-family: 'Times New Roman',serif; color: black;"><span style="font-size: 10pt; font-family: Verdana;">First official release</span></li></ul><span style="font-size: 10pt; font-family: Verdana;"></span><h2 style="background: rgb(51, 102, 255) none repeat scroll 0% 50%; -moz-background-clip: initial; -moz-background-origin: initial; -moz-background-inline-policy: initial;"><a name="License"></a><span style="font-size: 12pt; color: white;">License<o:p></o:p></span></h2>
<> 144:ef7eb2e8f9f7 1184
<> 144:ef7eb2e8f9f7 1185
<> 144:ef7eb2e8f9f7 1186 <div style="text-align: justify;"><font size="-1"><span style="font-family: 'Verdana','sans-serif';">Redistribution and use in source and
<> 144:ef7eb2e8f9f7 1187 binary forms, with or without modification, are permitted provided that the
<> 144:ef7eb2e8f9f7 1188 following conditions are met:</span><br></font>
<> 144:ef7eb2e8f9f7 1189 <ol><li><font size="-1"><span style="font-family: 'Verdana','sans-serif';">Redistributions of source code must
<> 144:ef7eb2e8f9f7 1190 retain the above copyright notice, this list of conditions and the following
<> 144:ef7eb2e8f9f7 1191 disclaimer.</span><span style="font-family: 'Verdana','sans-serif';"></span></font>
<> 144:ef7eb2e8f9f7 1192 </li><li><font size="-1"><span style="font-family: 'Verdana','sans-serif';">Redistributions in binary form must
<> 144:ef7eb2e8f9f7 1193 reproduce the above copyright notice, this list of conditions and the following
<> 144:ef7eb2e8f9f7 1194 disclaimer in </span><span style="font-family: 'Verdana','sans-serif';">the
<> 144:ef7eb2e8f9f7 1195 documentation and/or other materials provided with the distribution.</span><span style="font-family: 'Verdana','sans-serif';"></span></font>
<> 144:ef7eb2e8f9f7 1196 </li><li><font size="-1"><span style="font-family: 'Verdana','sans-serif';">Neither the
<> 144:ef7eb2e8f9f7 1197 name of STMicroelectronics nor the names of its contributors may be used to
<> 144:ef7eb2e8f9f7 1198 endorse or promote products derived </span><br></font></li></ol><font size="-1"><span style="font-family: 'Verdana','sans-serif';"> from this
<> 144:ef7eb2e8f9f7 1199 software without specific prior written permission.</span><br><span style="font-family: 'Verdana','sans-serif';"></span><br><span style="font-family: 'Verdana','sans-serif';">THIS SOFTWARE IS PROVIDED BY THE
<> 144:ef7eb2e8f9f7 1200 COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
<> 144:ef7eb2e8f9f7 1201 IMPLIED</span><span style="font-family: 'Verdana','sans-serif';"> WARRANTIES,
<> 144:ef7eb2e8f9f7 1202 INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
<> 144:ef7eb2e8f9f7 1203 FITNESS FOR A </span><span style="font-family: 'Verdana','sans-serif';">PARTICULAR PURPOSE ARE DISCLAIMED.
<> 144:ef7eb2e8f9f7 1204 IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY
<> 144:ef7eb2e8f9f7 1205 </span><span style="font-family: 'Verdana','sans-serif';">DIRECT, INDIRECT,
<> 144:ef7eb2e8f9f7 1206 INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
<> 144:ef7eb2e8f9f7 1207 LIMITED TO, </span><span style="font-family: 'Verdana','sans-serif';">PROCUREMENT
<> 144:ef7eb2e8f9f7 1208 OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
<> 144:ef7eb2e8f9f7 1209 INTERRUPTION) HOWEVER</span><span style="font-family: 'Verdana','sans-serif';">
<> 144:ef7eb2e8f9f7 1210 CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
<> 144:ef7eb2e8f9f7 1211 TORT (INCLUDING NEGLIGENCE OR </span><span style="font-family: 'Verdana','sans-serif';">OTHERWISE) ARISING IN ANY WAY OUT OF
<> 144:ef7eb2e8f9f7 1212 THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
<> 144:ef7eb2e8f9f7 1213 DAMAGE.</span></font> </div><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;; color: black;"></span>
<> 144:ef7eb2e8f9f7 1214 <div class="MsoNormal" style="text-align: center;" align="center"><span style="color: black;">
<> 144:ef7eb2e8f9f7 1215 <hr align="center" size="2" width="100%">
<> 144:ef7eb2e8f9f7 1216 </span></div>
<> 144:ef7eb2e8f9f7 1217 <p class="MsoNormal" style="margin: 4.5pt 0in 4.5pt 0.25in; text-align: center;" align="center"><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;; color: black;">For
<> 144:ef7eb2e8f9f7 1218 complete documentation on </span><span style="font-size: 10pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;;">STM32<span style="color: black;">
<> 144:ef7eb2e8f9f7 1219 Microcontrollers visit </span><u><span style="color: blue;"><a href="http://www.st.com/internet/mcu/family/141.jsp" target="_blank">www.st.com/STM32</a></span></u></span><span style="color: black;"><o:p></o:p></span></p>
<> 144:ef7eb2e8f9f7 1220 </td>
<> 144:ef7eb2e8f9f7 1221 </tr>
<> 144:ef7eb2e8f9f7 1222 <tr><td style="padding: 0in;" valign="top"></td></tr></tbody></table>
<> 144:ef7eb2e8f9f7 1223 <p class="MsoNormal"><span style="font-size: 10pt;"><o:p></o:p></span></p>
<> 144:ef7eb2e8f9f7 1224 </td>
<> 144:ef7eb2e8f9f7 1225 </tr>
<> 144:ef7eb2e8f9f7 1226 </tbody></table>
<> 144:ef7eb2e8f9f7 1227
<> 144:ef7eb2e8f9f7 1228 </div>
<> 144:ef7eb2e8f9f7 1229
<> 144:ef7eb2e8f9f7 1230 <p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<> 144:ef7eb2e8f9f7 1231
<> 144:ef7eb2e8f9f7 1232 </div>
<> 144:ef7eb2e8f9f7 1233
<> 144:ef7eb2e8f9f7 1234 </body></html>