Contents
- STM8L15x/16x/05x/AL31-L Standard Peripherals Library
Drivers update History
- License
STM8L15x/16x/05x/AL31-L Standard
Peripherals Library Drivers update History
V1.6.1 / 30-September-2014Main
Changes
- stm8l10x_flash.c/.h
- Update timeout variable
declaration on 16 bits
instead of 32 bits in
the
FLASH_WaitForLastOperation() function to avoid __ramfunc issue with
IAR.
- Add this note in the FLASH Driver to clarify the execution from RAM situation with IAR Toolchain:
1- Ignore the IAR compiler warnings, these warning don't impact the FLASH Program/Erase operations. The
FLASH code that must be executed from RAM starts at the enable of the
Program/Erase feature by accessing the FLASH_CR2 and the FLASH_NCR2
registers. All the variables initializations don't necessary require
the execution from RAM. 2- These
warnings are dependencies of the IAR Compiler: As the code generation
is made using many runtime library functions to keep code size to a
minimum.
- stm8l10x_rst.c/.h
- Update the RST_GetFlagStatus()
function implementation to return the state SET/RESET.
V1.6.0 / 28-June-2013Main
Changes
- Add the support of STM8L05x Value Line and the STM8AL products devices
- Update files header with new license disclaimer.
- stm8l15x.h
- Add "#define STM8L05X_LD_VL" for STM8L051x3 Low Density Value Line devices
- Add "#define STM8L05X_MD_VL" for STM8L052x6 Medium Density Value Line devices
- Add "#define STM8L05X_HD_VL" for STM8L052x8 High Density Value Line devices
- Add "#define STM8AL31_L_MD" for STM8AL3x Medium Density devices
- Replace "__RCST7__" by "__RCSTM8__"
- Add " MemoryAddressCast" define to manage the address cast within the STM8L family.
- Replace "#include <intrist7.h>" by "#include <intrins.h>"
- stm8l15x_usart.c/.h
- Update "USART_ClearITPendingBit()" function and parameter list.
- stm8l15x_flash.c/.h
- Update to add the support of the STM8L05x Value Line and the STM8AL products devices
- Fix memory address cast in the following functions: FALSH_ProgramBlock(), FALSH_ProgramByte(), FALSH_ProgramWord(), FALSH_EraseByte() and FALSH_ReadByte().
- stm8l15x_itc.c/.h
- Update to add the support of the STM8L05x Value Line and the STM8AL products devices
V1.5.0 / 13-May-2011Main
Changes
- Add support of STM8L15x Low Density devices
- Overall peripheral drivers source
code updated to group functions by lists related to peripheral
features and to add more comments on how to use the API(steps
preconditions and Hints)
- stm8l15x.h
- Replace __CONST define by CONST
- Update function execution from RAM handling
- Update STM8L15x Standard Peripheral Library main version defines
- Update RI_Structure to support STM8L15x Low Density devices
- Update interrupts macro definitions for IAR compiler
- stm8l15x_clk.c
- Replace __CONST by CONST in the SYSDivFactor declaration
- stm8l15x_dac.c/.h
- Rename DAC_TriangleWaveAmplitude() function to DAC_SetTriangleWaveAmplitude()
- Rename DAC_NoiseWaveLFSR() function to DAC_SetNoiseWaveLFSR()
- stm8l15x_rtc.c
- RTC
write protection management updated in RTC_DeInit(), RTC_Init(),
RTC_RatioCmd(), RTC_BypassShadowCmd(), RTC_SetTime(), RTC_SetDate(),
RTC_SetAlarm(), RTC_AlarmCmd(), RTC_WakeUpClockConfig(),
RTC_WakeUpCmd() and RTC_OutputConfig() functions
- RTC_WaitForSynchro() function updated by adding the write protection management
- RTC_GetTime(), RTC_GetSubSecond(), RTC_GetDate() functions updated by removing the clear of RSF bit
1.4.0
- 09/24/2010
- General
- Add support of High Density and Medium Density Plus devices.
- New drivers added for AES and TIM5
- STM8L15x_StdPeriph_Driver
- stm8l15x.h updated to support High Density and Medium Density Plus devices
- Add definition for STM8L15x Medium Density, Medium Density Plus and High Density devices
- Add "error" directive to force device family choice
- Add EEPROM definition in compiler defines (COSMIC, RAISONANCE, IAR)
- Add MEMCPY definition per devices family in RAISONANCE compiler defines
- Add function execution from RAM handling defines:
change #define USE_COSMIC_SECTIONS (1) by #define COSMIC_RAM_EXECUTION (1) for Cosmic compiler - Add new Medium Density Plus and High Density devices peripheral definition(AES, CSS on LSE, GPIO G/H/I, SPI2, TIM5, USART2/3)
- Update Peripheral registers declaration with Medium Density Plus and High Density devices new features
- IAR interrupt vector handling macro definition update:
change #define STRINGIZE_AUX(x) #x #define STRINGIZE(x) STRINGIZE_AUX( vector = (x) ) #define INTERRUPT_HANDLER( a, b ) \ _Pragma( STRINGIZE( (b)+2 ) ) \ __interrupt void (a)( void ) #define INTERRUPT_HANDLER_TRAP(a) \ _Pragma( STRINGIZE( 1 ) ) \ __interrupt void (a) (void) by #define STRINGVECTOR(x) #x #define VECTOR_ID(x) STRINGVECTOR( vector = (x) ) #define INTERRUPT_HANDLER( a, b ) \ _Pragma( VECTOR_ID( (b)+2 ) ) \ __interrupt void (a)( void ) #define INTERRUPT_HANDLER_TRAP(a) \ _Pragma( VECTOR_ID( 1 ) ) \ __interrupt void (a) (void) - "INTERRUPT" added to manage interrupt handler declaration for IAR and Cosmic Compilers
- stm8l15x_adc.h: updated to support channels 25, 26 and 27
- stm8l15x_clk.h/.c: updated to support added peripherals: AES, CSSLSE, SPI2, TIM5, USART2 and USART3
- New functions added:
CLK_ClockSecuritySytemDeglitchCmd() CLK_ClearFlag() CLK_LSEClockSecuritySystemEnable() CLK_RTCCLKSwitchOnLSEFailureEnable()
- stm8l15x_comp.c: COMP_TriggerConfig() function updated
- stm8l15x_dac.h/.c: updated to support DAC channel2, Wave, noise and triangle signals generation
- DAC_Trigger_T5_TRGO and DAC_Trigger_Ext added in DAC_Trigger_TypeDef
- DAC_Channel_2 added in DAC_Channel_TypeDef
- New functions added:
DAC_WaveGenerationCmd() DAC_NoiseWaveLFSR() DAC_TriangleWaveAmplitude() DAC_SetChannel2Data() DAC_DualSoftwareTriggerCmd() DAC_SetDualChannelData()
- stm8l15x_dma.h/.c: updated to support DMA channel 3
- New function added : DMA_SetCurrDataCounter()
- stm8l15x_exti.h/.c: updated to support new added ports (PG, PH, PI)
- EXTI_GetHalfPortSelection() function removed
- New function added EXTI_SelectPort()
- stm8l15x_flash.h/.c: updated to support High Density devices
- Add
detailed description of execution from RAM using functions
provided by this driver and with the different supported toolchains.
For more information, refer to stm8l15x_flash.h and stm8l15x_flash.c files.
- stm8l15x_i2c.h/.c: updated to support dual addressing mode
- New functions added:
I2C_OwnAddress2Config() I2C_DualAddressCmd() I2C_ReadRegister()
- stm8l15x_itc.h/.c: updated to support High Density and Medium Density Plus devices peripheral IRQ.
- stm8l15x_lcd.h/.c: updated to support new LCD features:
- LCD_Duty_1_8 added in LCD_Duty_TypeDef
- LCD_Bias_1_4 added in LCD_Bias_TypeDef
- LCD_PortMaskRegister_4 and LCD_PortMaskRegister_5 added in LCD_PortMaskRegister_TypeDef
- Added in LCD_RAMRegister_TypeDef
LCD_RAMRegister_14 LCD_RAMRegister_15 LCD_RAMRegister_16 LCD_RAMRegister_17 LCD_RAMRegister_18 LCD_RAMRegister_19 LCD_RAMRegister_20 LCD_RAMRegister_21 - New function added : LCD_PageSelect()
- stm8l15x_rtc.h/.c : updated to support new RTC features: Calibration, Synchronization, tamper and subseconds
- New functions added:
RTC_CalibOutputConfig() RTC_TamperFilterConfig() RTC_TamperSamplingFreqConfig() RTC_TamperPinsPrechargeDuration() RTC_TamperLevelConfig() RTC_TamperCmd() RTC_SynchroShiftConfig() RTC_SmoothCalibConfig() RTC_AlarmStructInit() RTC_AlarmSubSecondConfig() RTC_GetSubSecond() RTC_DateStructInit() RTC_TimeStructInit() RTC_BypassShadowCmd()
- stm8l15x_syscfg.h/.c: updated to support High Density and Medium Density Plus devices
- RI_InputCaptureRouting_1 and RI_InputCaptureRouting_2 added in RI_InputCaptureRouting_TypeDef
- Added in RI_AnalogSwitch_TypeDef
RI_AnalogSwitch_9 RI_AnalogSwitch_10 RI_AnalogSwitch_11 - Added in REMAP_Pin_TypeDef
REMAP_Pin_USART1Clk REMAP_Pin_TIM2TRIGPortA REMAP_Pin_TIM3TRIGPortA REMAP_Pin_TIM2TRIGLSE REMAP_Pin_TIM3TRIGLSE REMAP_Pin_SPI2Full REMAP_Pin_TIM3TRIGPortG REMAP_Pin_TIM23BKIN REMAP_Pin_SPI1PortF REMAP_Pin_USART3TxRxPortF REMAP_Pin_USART3Clk REMAP_Pin_TIM3Channel1 REMAP_Pin_TIM3Channel2 REMAP_Pin_CCO - Update functions: SYSCFG_REMAPDeInit() and SYSCFG_REMAPPinConfig()
- stm8l15x_wfe.h/.c: updated to support added peripherals and Ports: AES, CSSLSE, SPI2, TIM5, USART2 and USART3
1.3.0
- 07/14/2010
- STM8L15x_StdPeriph_Driver
- stm8l15x.h file updated to support IAR Embedded Workbench for
STM8 (EWSTM8) toolchain specific declarations
- "INTERRUPT_HANDLER" macro added to manage interrupt vector declarations for all supported toochains.
- stm8l15x_flash.h file updated to add FLASH_RASS_KEY1 definition
1.2.0
- 05/14/2010
- STM8L15x_StdPeriph_Driver
- stm8l15x.h file updated to support BootROM bit mask in CLK_PCKENR2 register
- CLK driver stm8l15x_clk.h: add support for BootROM bit in CLK_PCKENR2.
- COMP driver stm8l15x_comp.h: COMP_InvertingInput_DAC renamed to COMP_InvertingInput_DAC1.
- DMA driver stm8l15x_dma.h : IS_DMA_CHANNEL macro updated
- I2C driver stm8l15x_i2c.h/.c: I2C events description and management enhancement.
- Add
detailed description of I2C events and how to manage them using the
functions provided by this driver. For more information, refer to
stm8l15x_i2c.h and stm8l15x_i2c.c files.
Licensecensed
under MCD-ST Liberty SW License Agreement V2, (the "License"); You may not use
this package
except in compliance with the License. You may obtain a copy of the License
at:
Unless
required by applicable law or agreed to in writing, software distributed under
the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
CONDITIONS OF ANY KIND, either express or implied. See the License for the
specific language governing permissions and limitations under the
License.
For complete documentation on
STM8L15x/16x 8-bit microcontrollers platform visit www.st.com
|