Skip to content

Commit 5fefbfa

Browse files
committed
system: WL: add STM32WLxx system source files
Signed-off-by: Frederic Pillon <frederic.pillon@st.com>
1 parent 33fede2 commit 5fefbfa

File tree

3 files changed

+716
-0
lines changed

3 files changed

+716
-0
lines changed

system/STM32WLxx/stm32wlxx_hal_conf.h

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
#ifndef __STM32WLxx_HAL_CONF_H
2+
#define __STM32WLxx_HAL_CONF_H
3+
4+
#include "variant.h"
5+
6+
/* STM32WLxx specific HAL configuration options. */
7+
#if __has_include("hal_conf_custom.h")
8+
#include "hal_conf_custom.h"
9+
#else
10+
#if __has_include("hal_conf_extra.h")
11+
#include "hal_conf_extra.h"
12+
#endif
13+
#include "stm32wlxx_hal_conf_default.h"
14+
#endif
15+
16+
#endif /* __STM32WLxx_HAL_CONF_H */
Lines changed: 340 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,340 @@
1+
/**
2+
******************************************************************************
3+
* @file stm32wlxx_hal_conf.h
4+
* @author MCD Application Team
5+
* @brief HAL configuration file.
6+
******************************************************************************
7+
* @attention
8+
*
9+
* <h2><center>&copy; Copyright (c) 2020 STMicroelectronics.
10+
* All rights reserved.</center></h2>
11+
*
12+
* This software component is licensed by ST under BSD 3-Clause license,
13+
* the "License"; You may not use this file except in compliance with the
14+
* License. You may obtain a copy of the License at:
15+
* opensource.org/licenses/BSD-3-Clause
16+
*
17+
******************************************************************************
18+
*/
19+
20+
/* Define to prevent recursive inclusion -------------------------------------*/
21+
#ifndef STM32WLxx_HAL_CONF_H
22+
#define STM32WLxx_HAL_CONF_H
23+
24+
#ifdef __cplusplus
25+
extern "C" {
26+
#endif
27+
28+
/* Exported types ------------------------------------------------------------*/
29+
/* Exported constants --------------------------------------------------------*/
30+
31+
/* ########################## Module Selection ############################## */
32+
/**
33+
* @brief This is the list of modules to be used in the HAL driver
34+
*/
35+
#define HAL_MODULE_ENABLED
36+
#define HAL_ADC_MODULE_ENABLED
37+
#define HAL_COMP_MODULE_ENABLED
38+
#define HAL_CRC_MODULE_ENABLED
39+
#define HAL_CRYP_MODULE_ENABLED
40+
#define HAL_DAC_MODULE_ENABLED
41+
#define HAL_GTZC_MODULE_ENABLED
42+
#define HAL_HSEM_MODULE_ENABLED
43+
#define HAL_I2C_MODULE_ENABLED
44+
#define HAL_I2S_MODULE_ENABLED
45+
#define HAL_IPCC_MODULE_ENABLED
46+
#define HAL_IRDA_MODULE_ENABLED
47+
#define HAL_IWDG_MODULE_ENABLED
48+
#define HAL_LPTIM_MODULE_ENABLED
49+
#define HAL_PKA_MODULE_ENABLED
50+
#define HAL_RNG_MODULE_ENABLED
51+
#define HAL_RTC_MODULE_ENABLED
52+
#define HAL_SMARTCARD_MODULE_ENABLED
53+
#define HAL_SMBUS_MODULE_ENABLED
54+
#define HAL_SPI_MODULE_ENABLED
55+
#define HAL_SUBGHZ_MODULE_ENABLED
56+
#define HAL_TIM_MODULE_ENABLED
57+
#define HAL_UART_MODULE_ENABLED
58+
#define HAL_USART_MODULE_ENABLED
59+
#define HAL_WWDG_MODULE_ENABLED
60+
#define HAL_EXTI_MODULE_ENABLED
61+
#define HAL_CORTEX_MODULE_ENABLED
62+
#define HAL_DMA_MODULE_ENABLED
63+
#define HAL_FLASH_MODULE_ENABLED
64+
#define HAL_GPIO_MODULE_ENABLED
65+
#define HAL_PWR_MODULE_ENABLED
66+
#define HAL_RCC_MODULE_ENABLED
67+
68+
/* ########################## Register Callbacks selection ############################## */
69+
/**
70+
* @brief This is the list of modules where register callback can be used
71+
*/
72+
#define USE_HAL_ADC_REGISTER_CALLBACKS 0u
73+
#define USE_HAL_COMP_REGISTER_CALLBACKS 0u
74+
#define USE_HAL_CRYP_REGISTER_CALLBACKS 0u
75+
#define USE_HAL_DAC_REGISTER_CALLBACKS 0u
76+
#define USE_HAL_I2C_REGISTER_CALLBACKS 0u
77+
#define USE_HAL_I2S_REGISTER_CALLBACKS 0u
78+
#define USE_HAL_IRDA_REGISTER_CALLBACKS 0u
79+
#define USE_HAL_LPTIM_REGISTER_CALLBACKS 0u
80+
#define USE_HAL_PKA_REGISTER_CALLBACKS 0u
81+
#define USE_HAL_RNG_REGISTER_CALLBACKS 0u
82+
#define USE_HAL_RTC_REGISTER_CALLBACKS 0u
83+
#define USE_HAL_SMARTCARD_REGISTER_CALLBACKS 0u
84+
#define USE_HAL_SMBUS_REGISTER_CALLBACKS 0u
85+
#define USE_HAL_SPI_REGISTER_CALLBACKS 0u
86+
#define USE_HAL_SUBGHZ_REGISTER_CALLBACKS 0u
87+
#define USE_HAL_TIM_REGISTER_CALLBACKS 0u
88+
#define USE_HAL_UART_REGISTER_CALLBACKS 0u
89+
#define USE_HAL_USART_REGISTER_CALLBACKS 0u
90+
#define USE_HAL_WWDG_REGISTER_CALLBACKS 0u
91+
92+
/* ########################## Oscillator Values adaptation ####################*/
93+
/**
94+
* @brief Adjust the value of External High Speed oscillator (HSE) used in your application.
95+
* This value is used by the RCC HAL module to compute the system frequency
96+
* (when HSE is used as system clock source, directly or through the PLL).
97+
*/
98+
99+
#if !defined (HSE_VALUE)
100+
#define HSE_VALUE 32000000UL /*!< Value of the External oscillator in Hz */
101+
#endif /* HSE_VALUE */
102+
103+
#if !defined (HSE_STARTUP_TIMEOUT)
104+
#define HSE_STARTUP_TIMEOUT 100UL /*!< Time out for HSE start up, in ms */
105+
#endif /* HSE_STARTUP_TIMEOUT */
106+
107+
/**
108+
* @brief Internal Multiple Speed oscillator (MSI) default value.
109+
* This value is the default MSI range value after Reset.
110+
*/
111+
#if !defined (MSI_VALUE)
112+
#define MSI_VALUE 4000000UL /*!< Value of the Internal oscillator in Hz*/
113+
#endif /* MSI_VALUE */
114+
115+
/**
116+
* @brief Internal High Speed oscillator (HSI) value.
117+
* This value is used by the RCC HAL module to compute the system frequency
118+
* (when HSI is used as system clock source, directly or through the PLL).
119+
*/
120+
#if !defined (HSI_VALUE)
121+
#define HSI_VALUE 16000000UL /*!< Value of the Internal oscillator in Hz*/
122+
#endif /* HSI_VALUE */
123+
124+
/**
125+
* @brief Internal Low Speed oscillator (LSI) value.
126+
*/
127+
#if !defined (LSI_VALUE)
128+
#define LSI_VALUE 32000UL /*!< LSI Typical Value in Hz*/
129+
#endif /* LSI_VALUE */ /*!< Value of the Internal Low Speed oscillator in Hz
130+
The real value may vary depending on the variations
131+
in voltage and temperature. */
132+
133+
/**
134+
* @brief External Low Speed oscillator (LSE) value.
135+
* This value is used by the UART, RTC HAL module to compute the system frequency
136+
*/
137+
#if !defined (LSE_VALUE)
138+
#define LSE_VALUE 32768UL /*!< Value of the External oscillator in Hz*/
139+
#endif /* LSE_VALUE */
140+
141+
/**
142+
* @brief Internal Multiple Speed oscillator (HSI48) default value.
143+
* This value is the default HSI48 range value after Reset.
144+
*/
145+
#if !defined (HSI48_VALUE)
146+
#define HSI48_VALUE 48000000UL /*!< Value of the Internal oscillator in Hz*/
147+
#endif /* HSI48_VALUE */
148+
149+
#if !defined (LSE_STARTUP_TIMEOUT)
150+
#define LSE_STARTUP_TIMEOUT 5000UL /*!< Time out for LSE start up, in ms */
151+
#endif /* LSE_STARTUP_TIMEOUT */
152+
153+
154+
/* Tip: To avoid modifying this file each time you need to use different HSE,
155+
=== you can define the HSE value in your toolchain compiler preprocessor. */
156+
157+
/* ########################### System Configuration ######################### */
158+
/**
159+
* @brief This is the HAL system configuration section
160+
*/
161+
#define VDD_VALUE 3300U /*!< Value of VDD in mv */
162+
#define TICK_INT_PRIORITY ((1uL <<__NVIC_PRIO_BITS) - 1uL) /*!< tick interrupt priority (lowest by default) */
163+
#define USE_RTOS 0U
164+
#define PREFETCH_ENABLE 0U
165+
#define INSTRUCTION_CACHE_ENABLE 1U
166+
#define DATA_CACHE_ENABLE 1U
167+
168+
/* ########################## Assert Selection ############################## */
169+
/**
170+
* @brief Uncomment the line below to expanse the "assert_param" macro in the
171+
* HAL drivers code
172+
*/
173+
/* #define USE_FULL_ASSERT 1 */
174+
175+
/* ################## SPI peripheral configuration ########################## */
176+
177+
/* CRC FEATURE: Use to activate CRC feature inside HAL SPI Driver
178+
* Activated: CRC code is present inside driver
179+
* Deactivated: CRC code cleaned from driver
180+
*/
181+
182+
#define USE_SPI_CRC 1U
183+
184+
/* ################## CRYP peripheral configuration ########################## */
185+
186+
#define USE_HAL_CRYP_SUSPEND_RESUME 1U
187+
188+
189+
/* Includes ------------------------------------------------------------------*/
190+
/**
191+
* @brief Include module's header file
192+
*/
193+
#ifdef HAL_DMA_MODULE_ENABLED
194+
#include "stm32wlxx_hal_dma.h"
195+
#endif /* HAL_DMA_MODULE_ENABLED */
196+
197+
#ifdef HAL_ADC_MODULE_ENABLED
198+
#include "stm32wlxx_hal_adc.h"
199+
#endif /* HAL_ADC_MODULE_ENABLED */
200+
201+
#ifdef HAL_COMP_MODULE_ENABLED
202+
#include "stm32wlxx_hal_comp.h"
203+
#endif /* HAL_COMP_MODULE_ENABLED */
204+
205+
#ifdef HAL_CORTEX_MODULE_ENABLED
206+
#include "stm32wlxx_hal_cortex.h"
207+
#endif /* HAL_CORTEX_MODULE_ENABLED */
208+
209+
#ifdef HAL_CRC_MODULE_ENABLED
210+
#include "stm32wlxx_hal_crc.h"
211+
#endif /* HAL_CRC_MODULE_ENABLED */
212+
213+
#ifdef HAL_CRYP_MODULE_ENABLED
214+
#include "stm32wlxx_hal_cryp.h"
215+
#endif /* HAL_CRYP_MODULE_ENABLED */
216+
217+
#ifdef HAL_DAC_MODULE_ENABLED
218+
#include "stm32wlxx_hal_dac.h"
219+
#endif /* HAL_DAC_MODULE_ENABLED */
220+
221+
#ifdef HAL_EXTI_MODULE_ENABLED
222+
#include "stm32wlxx_hal_exti.h"
223+
#endif /* HAL_EXTI_MODULE_ENABLED */
224+
225+
#ifdef HAL_FLASH_MODULE_ENABLED
226+
#include "stm32wlxx_hal_flash.h"
227+
#endif /* HAL_FLASH_MODULE_ENABLED */
228+
229+
#ifdef HAL_GPIO_MODULE_ENABLED
230+
#include "stm32wlxx_hal_gpio.h"
231+
#endif /* HAL_GPIO_MODULE_ENABLED */
232+
233+
#ifdef HAL_GTZC_MODULE_ENABLED
234+
#include "stm32wlxx_hal_gtzc.h"
235+
#endif /* HAL_GTZC_MODULE_ENABLED */
236+
237+
#ifdef HAL_HSEM_MODULE_ENABLED
238+
#include "stm32wlxx_hal_hsem.h"
239+
#endif /* HAL_HSEM_MODULE_ENABLED */
240+
241+
#ifdef HAL_I2C_MODULE_ENABLED
242+
#include "stm32wlxx_hal_i2c.h"
243+
#endif /* HAL_I2C_MODULE_ENABLED */
244+
245+
#ifdef HAL_I2S_MODULE_ENABLED
246+
#include "stm32wlxx_hal_i2s.h"
247+
#endif /* HAL_I2S_MODULE_ENABLED */
248+
249+
#ifdef HAL_IPCC_MODULE_ENABLED
250+
#include "stm32wlxx_hal_ipcc.h"
251+
#endif /* HAL_IPCC_MODULE_ENABLED */
252+
253+
#ifdef HAL_IRDA_MODULE_ENABLED
254+
#include "stm32wlxx_hal_irda.h"
255+
#endif /* HAL_IRDA_MODULE_ENABLED */
256+
257+
#ifdef HAL_IWDG_MODULE_ENABLED
258+
#include "stm32wlxx_hal_iwdg.h"
259+
#endif /* HAL_IWDG_MODULE_ENABLED */
260+
261+
#ifdef HAL_LPTIM_MODULE_ENABLED
262+
#include "stm32wlxx_hal_lptim.h"
263+
#endif /* HAL_LPTIM_MODULE_ENABLED */
264+
265+
#ifdef HAL_PKA_MODULE_ENABLED
266+
#include "stm32wlxx_hal_pka.h"
267+
#endif /* HAL_PKA_MODULE_ENABLED */
268+
269+
#ifdef HAL_PWR_MODULE_ENABLED
270+
#include "stm32wlxx_hal_pwr.h"
271+
#endif /* HAL_PWR_MODULE_ENABLED */
272+
273+
#ifdef HAL_RCC_MODULE_ENABLED
274+
#include "stm32wlxx_hal_rcc.h"
275+
#endif /* HAL_RCC_MODULE_ENABLED */
276+
277+
#ifdef HAL_RNG_MODULE_ENABLED
278+
#include "stm32wlxx_hal_rng.h"
279+
#endif /* HAL_RNG_MODULE_ENABLED */
280+
281+
#ifdef HAL_RTC_MODULE_ENABLED
282+
#include "stm32wlxx_hal_rtc.h"
283+
#endif /* HAL_RTC_MODULE_ENABLED */
284+
285+
#ifdef HAL_SMARTCARD_MODULE_ENABLED
286+
#include "stm32wlxx_hal_smartcard.h"
287+
#endif /* HAL_SMARTCARD_MODULE_ENABLED */
288+
289+
#ifdef HAL_SMBUS_MODULE_ENABLED
290+
#include "stm32wlxx_hal_smbus.h"
291+
#endif /* HAL_SMBUS_MODULE_ENABLED */
292+
293+
#ifdef HAL_SPI_MODULE_ENABLED
294+
#include "stm32wlxx_hal_spi.h"
295+
#endif /* HAL_SPI_MODULE_ENABLED */
296+
297+
#ifdef HAL_SUBGHZ_MODULE_ENABLED
298+
#include "stm32wlxx_hal_subghz.h"
299+
#endif /* HAL_SUBGHZ_MODULE_ENABLED */
300+
301+
#ifdef HAL_TIM_MODULE_ENABLED
302+
#include "stm32wlxx_hal_tim.h"
303+
#endif /* HAL_TIM_MODULE_ENABLED */
304+
305+
#ifdef HAL_UART_MODULE_ENABLED
306+
#include "stm32wlxx_hal_uart.h"
307+
#endif /* HAL_UART_MODULE_ENABLED */
308+
309+
#ifdef HAL_USART_MODULE_ENABLED
310+
#include "stm32wlxx_hal_usart.h"
311+
#endif /* HAL_USART_MODULE_ENABLED */
312+
313+
#ifdef HAL_WWDG_MODULE_ENABLED
314+
#include "stm32wlxx_hal_wwdg.h"
315+
#endif /* HAL_WWDG_MODULE_ENABLED */
316+
317+
/* Exported macro ------------------------------------------------------------*/
318+
#ifdef USE_FULL_ASSERT
319+
/**
320+
* @brief The assert_param macro is used for function's parameters check.
321+
* @param expr If expr is false, it calls assert_failed function
322+
* which reports the name of the source file and the source
323+
* line number of the call that failed.
324+
* If expr is true, it returns no value.
325+
* @retval None
326+
*/
327+
#define assert_param(expr) ((expr) ? (void)0U : assert_failed((uint8_t *)__FILE__, __LINE__))
328+
/* Exported functions ------------------------------------------------------- */
329+
void assert_failed(uint8_t* file, uint32_t line);
330+
#else
331+
#define assert_param(expr) ((void)0U)
332+
#endif /* USE_FULL_ASSERT */
333+
334+
#ifdef __cplusplus
335+
}
336+
#endif
337+
338+
#endif /* STM32WLxx_HAL_CONF_H */
339+
340+
/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/

0 commit comments

Comments
 (0)