12
12
******************************************************************************
13
13
* @attention
14
14
*
15
- * <h2><center>© Copyright (c) 2019 STMicroelectronics.
16
- * All rights reserved.</center></h2>
15
+ * Copyright (c) 2019 STMicroelectronics.
16
+ * All rights reserved.
17
17
*
18
- * This software component is licensed by ST under BSD 3-Clause license,
19
- * the "License"; You may not use this file except in compliance with the
20
- * License. You may obtain a copy of the License at:
21
- * opensource.org/licenses/BSD-3-Clause
18
+ * This software is licensed under terms that can be found in the LICENSE file
19
+ * in the root directory of this software component.
20
+ * If no LICENSE file comes with this software, it is provided AS-IS.
22
21
*
23
22
******************************************************************************
24
23
*/
@@ -50,7 +49,7 @@ typedef enum
50
49
{
51
50
/****** Cortex-M Processor Exceptions Numbers *****************************************************************/
52
51
NonMaskableInt_IRQn = -14, /*!< 2 Non Maskable Interrupt */
53
- HardFault_IRQn = -13, /*!< 4 Cortex-M Memory Management Interrupt */
52
+ HardFault_IRQn = -13, /*!< 3 Cortex-M Hard Fault Interrupt */
54
53
MemoryManagement_IRQn = -12, /*!< 4 Cortex-M Memory Management Interrupt */
55
54
BusFault_IRQn = -11, /*!< 5 Cortex-M Bus Fault Interrupt */
56
55
UsageFault_IRQn = -10, /*!< 6 Cortex-M Usage Fault Interrupt */
@@ -213,12 +212,12 @@ typedef enum
213
212
* @brief Configuration of the Cortex-M7 Processor and Core Peripherals
214
213
*/
215
214
#define __CM7_REV 0x0100U /*!< Cortex-M7 revision r1p0 */
216
- #define __MPU_PRESENT 1 /*!< CM7 provides an MPU */
217
- #define __NVIC_PRIO_BITS 4 /*!< CM7 uses 4 Bits for the Priority Levels */
218
- #define __Vendor_SysTickConfig 0 /*!< Set to 1 if different SysTick Config is used */
219
- #define __FPU_PRESENT 1 /*!< FPU present */
220
- #define __ICACHE_PRESENT 1 /*!< CM7 instruction cache present */
221
- #define __DCACHE_PRESENT 1 /*!< CM7 data cache present */
215
+ #define __MPU_PRESENT 1U /*!< CM7 provides an MPU */
216
+ #define __NVIC_PRIO_BITS 4U /*!< CM7 uses 4 Bits for the Priority Levels */
217
+ #define __Vendor_SysTickConfig 0U /*!< Set to 1 if different SysTick Config is used */
218
+ #define __FPU_PRESENT 1U /*!< FPU present */
219
+ #define __ICACHE_PRESENT 1U /*!< CM7 instruction cache present */
220
+ #define __DCACHE_PRESENT 1U /*!< CM7 data cache present */
222
221
#include "core_cm7.h" /*!< Cortex-M7 processor and core peripherals */
223
222
224
223
/**
@@ -248,10 +247,10 @@ typedef struct
248
247
__IO uint32_t CFGR2; /*!< ADC Configuration register 2, Address offset: 0x10 */
249
248
__IO uint32_t SMPR1; /*!< ADC sample time register 1, Address offset: 0x14 */
250
249
__IO uint32_t SMPR2; /*!< ADC sample time register 2, Address offset: 0x18 */
251
- __IO uint32_t PCSEL_RES0; /*!< Rserved for ADC3, ADC1/2 pre-channel selection, Address offset: 0x1C */
250
+ __IO uint32_t PCSEL_RES0; /*!< Reserved for ADC3, ADC1/2 pre-channel selection, Address offset: 0x1C */
252
251
__IO uint32_t LTR1_TR1; /*!< ADC watchdog Lower threshold register 1, Address offset: 0x20 */
253
252
__IO uint32_t HTR1_TR2; /*!< ADC watchdog higher threshold register 1, Address offset: 0x24 */
254
- __IO uint32_t RES1_TR3; /*!< Rserved for ADC1/2, ADC3 threshold register, Address offset: 0x28 */
253
+ __IO uint32_t RES1_TR3; /*!< Reserved for ADC1/2, ADC3 threshold register, Address offset: 0x28 */
255
254
uint32_t RESERVED2; /*!< Reserved, 0x02C */
256
255
__IO uint32_t SQR1; /*!< ADC regular sequence register 1, Address offset: 0x30 */
257
256
__IO uint32_t SQR2; /*!< ADC regular sequence register 2, Address offset: 0x34 */
@@ -928,8 +927,8 @@ __IO uint32_t PR3; /*!< EXTI Pending register,
928
927
* @brief This structure registers corresponds to EXTI_Typdef CPU1/CPU2 registers subset (IMRx, EMRx and PRx), allowing to define EXTI_D1/EXTI_D2
929
928
* with rapid/common access to these IMRx, EMRx, PRx registers for CPU1 and CPU2.
930
929
* Note that EXTI_D1 and EXTI_D2 bases addresses are calculated to point to CPUx first register:
931
- * IMR1 in case of EXTI_D1 that is addressing CPU1 (Coretx -M7)
932
- * C2IMR1 in case of EXTI_D2 that is addressing CPU2 (Coretx -M4)
930
+ * IMR1 in case of EXTI_D1 that is addressing CPU1 (Cortex -M7)
931
+ * C2IMR1 in case of EXTI_D2 that is addressing CPU2 (Cortex -M4)
933
932
* Note: EXTI_D2 and corresponding C2IMRx, C2EMRx and C2PRx registers are available for Dual Core devices only
934
933
*/
935
934
@@ -2700,6 +2699,15 @@ typedef struct
2700
2699
* @{
2701
2700
*/
2702
2701
2702
+ /** @addtogroup Hardware_Constant_Definition
2703
+ * @{
2704
+ */
2705
+ #define LSI_STARTUP_TIME 130U /*!< LSI Maximum startup time in us */
2706
+
2707
+ /**
2708
+ * @}
2709
+ */
2710
+
2703
2711
/** @addtogroup Peripheral_Registers_Bits_Definition
2704
2712
* @{
2705
2713
*/
@@ -10803,7 +10811,7 @@ typedef struct
10803
10811
10804
10812
/******************* Bits definition for FLASH_ACR register **********************/
10805
10813
#define FLASH_ACR_LATENCY_Pos (0U)
10806
- #define FLASH_ACR_LATENCY_Msk (0xFUL << FLASH_ACR_LATENCY_Pos) /*!< 0x0000000F */
10814
+ #define FLASH_ACR_LATENCY_Msk (0xFUL << FLASH_ACR_LATENCY_Pos) /*!< 0x0000000F: bit4 is kept only for legacy purpose */
10807
10815
#define FLASH_ACR_LATENCY FLASH_ACR_LATENCY_Msk /*!< Read Latency */
10808
10816
#define FLASH_ACR_LATENCY_0WS (0x00000000UL)
10809
10817
#define FLASH_ACR_LATENCY_1WS (0x00000001UL)
@@ -10813,6 +10821,14 @@ typedef struct
10813
10821
#define FLASH_ACR_LATENCY_5WS (0x00000005UL)
10814
10822
#define FLASH_ACR_LATENCY_6WS (0x00000006UL)
10815
10823
#define FLASH_ACR_LATENCY_7WS (0x00000007UL)
10824
+
10825
+ #define FLASH_ACR_WRHIGHFREQ_Pos (4U)
10826
+ #define FLASH_ACR_WRHIGHFREQ_Msk (0x3UL << FLASH_ACR_WRHIGHFREQ_Pos) /*!< 0x00000030 */
10827
+ #define FLASH_ACR_WRHIGHFREQ FLASH_ACR_WRHIGHFREQ_Msk /*!< Flash signal delay */
10828
+ #define FLASH_ACR_WRHIGHFREQ_0 (0x1UL << FLASH_ACR_WRHIGHFREQ_Pos) /*!< 0x00000010 */
10829
+ #define FLASH_ACR_WRHIGHFREQ_1 (0x2UL << FLASH_ACR_WRHIGHFREQ_Pos) /*!< 0x00000020 */
10830
+
10831
+ /* Legacy FLASH Latency defines */
10816
10832
#define FLASH_ACR_LATENCY_8WS (0x00000008UL)
10817
10833
#define FLASH_ACR_LATENCY_9WS (0x00000009UL)
10818
10834
#define FLASH_ACR_LATENCY_10WS (0x0000000AUL)
@@ -10821,12 +10837,6 @@ typedef struct
10821
10837
#define FLASH_ACR_LATENCY_13WS (0x0000000DUL)
10822
10838
#define FLASH_ACR_LATENCY_14WS (0x0000000EUL)
10823
10839
#define FLASH_ACR_LATENCY_15WS (0x0000000FUL)
10824
- #define FLASH_ACR_WRHIGHFREQ_Pos (4U)
10825
- #define FLASH_ACR_WRHIGHFREQ_Msk (0x3UL << FLASH_ACR_WRHIGHFREQ_Pos) /*!< 0x00000030 */
10826
- #define FLASH_ACR_WRHIGHFREQ FLASH_ACR_WRHIGHFREQ_Msk /*!< Flash signal delay */
10827
- #define FLASH_ACR_WRHIGHFREQ_0 (0x1UL << FLASH_ACR_WRHIGHFREQ_Pos) /*!< 0x00000010 */
10828
- #define FLASH_ACR_WRHIGHFREQ_1 (0x2UL << FLASH_ACR_WRHIGHFREQ_Pos) /*!< 0x00000020 */
10829
-
10830
10840
/******************* Bits definition for FLASH_CR register ***********************/
10831
10841
#define FLASH_CR_LOCK_Pos (0U)
10832
10842
#define FLASH_CR_LOCK_Msk (0x1UL << FLASH_CR_LOCK_Pos) /*!< 0x00000001 */
@@ -19268,8 +19278,8 @@ typedef struct
19268
19278
#define TIM_CR2_OIS5_Pos (16U)
19269
19279
#define TIM_CR2_OIS5_Msk (0x1UL << TIM_CR2_OIS5_Pos) /*!< 0x00010000 */
19270
19280
#define TIM_CR2_OIS5 TIM_CR2_OIS5_Msk /*!<Output Idle state 4 (OC4 output) */
19271
- #define TIM_CR2_OIS6_Pos (17U )
19272
- #define TIM_CR2_OIS6_Msk (0x1UL << TIM_CR2_OIS6_Pos) /*!< 0x00020000 */
19281
+ #define TIM_CR2_OIS6_Pos (18U )
19282
+ #define TIM_CR2_OIS6_Msk (0x1UL << TIM_CR2_OIS6_Pos) /*!< 0x00040000 */
19273
19283
#define TIM_CR2_OIS6 TIM_CR2_OIS6_Msk /*!<Output Idle state 4 (OC4 output) */
19274
19284
19275
19285
#define TIM_CR2_MMS2_Pos (20U)
@@ -19546,8 +19556,8 @@ typedef struct
19546
19556
#define TIM_CCMR2_OC3PE TIM_CCMR2_OC3PE_Msk /*!<Output Compare 3 Preload enable */
19547
19557
19548
19558
#define TIM_CCMR2_OC3M_Pos (4U)
19549
- #define TIM_CCMR2_OC3M_Msk (0x7UL << TIM_CCMR2_OC3M_Pos) /*!< 0x00000070 */
19550
- #define TIM_CCMR2_OC3M TIM_CCMR2_OC3M_Msk /*!<OC3M[2 :0] bits (Output Compare 3 Mode) */
19559
+ #define TIM_CCMR2_OC3M_Msk (0x1007UL << TIM_CCMR2_OC3M_Pos) /*!< 0x00010070 */
19560
+ #define TIM_CCMR2_OC3M TIM_CCMR2_OC3M_Msk /*!<OC3M[3 :0] bits (Output Compare 3 Mode) */
19551
19561
#define TIM_CCMR2_OC3M_0 (0x1UL << TIM_CCMR2_OC3M_Pos) /*!< 0x00000010 */
19552
19562
#define TIM_CCMR2_OC3M_1 (0x2UL << TIM_CCMR2_OC3M_Pos) /*!< 0x00000020 */
19553
19563
#define TIM_CCMR2_OC3M_2 (0x4UL << TIM_CCMR2_OC3M_Pos) /*!< 0x00000040 */
@@ -19571,12 +19581,12 @@ typedef struct
19571
19581
#define TIM_CCMR2_OC4PE TIM_CCMR2_OC4PE_Msk /*!<Output Compare 4 Preload enable */
19572
19582
19573
19583
#define TIM_CCMR2_OC4M_Pos (12U)
19574
- #define TIM_CCMR2_OC4M_Msk (0x7UL << TIM_CCMR2_OC4M_Pos) /*!< 0x00007000 */
19575
- #define TIM_CCMR2_OC4M TIM_CCMR2_OC4M_Msk /*!<OC4M[2 :0] bits (Output Compare 4 Mode) */
19584
+ #define TIM_CCMR2_OC4M_Msk (0x1007UL << TIM_CCMR2_OC4M_Pos) /*!< 0x01007000 */
19585
+ #define TIM_CCMR2_OC4M TIM_CCMR2_OC4M_Msk /*!<OC4M[3 :0] bits (Output Compare 4 Mode) */
19576
19586
#define TIM_CCMR2_OC4M_0 (0x1UL << TIM_CCMR2_OC4M_Pos) /*!< 0x00001000 */
19577
19587
#define TIM_CCMR2_OC4M_1 (0x2UL << TIM_CCMR2_OC4M_Pos) /*!< 0x00002000 */
19578
19588
#define TIM_CCMR2_OC4M_2 (0x4UL << TIM_CCMR2_OC4M_Pos) /*!< 0x00004000 */
19579
- #define TIM_CCMR2_OC4M_3 (0x100UL << TIM_CCMR2_OC4M_Pos) /*!< 0x00100000 */
19589
+ #define TIM_CCMR2_OC4M_3 (0x1000UL << TIM_CCMR2_OC4M_Pos) /*!< 0x01000000 */
19580
19590
19581
19591
#define TIM_CCMR2_OC4CE_Pos (15U)
19582
19592
#define TIM_CCMR2_OC4CE_Msk (0x1UL << TIM_CCMR2_OC4CE_Pos) /*!< 0x00008000 */
@@ -19782,6 +19792,18 @@ typedef struct
19782
19792
#define TIM_BDTR_BK2P_Pos (25U)
19783
19793
#define TIM_BDTR_BK2P_Msk (0x1UL << TIM_BDTR_BK2P_Pos) /*!< 0x02000000 */
19784
19794
#define TIM_BDTR_BK2P TIM_BDTR_BK2P_Msk /*!<Break Polarity for Break2 */
19795
+ #define TIM_BDTR_BKDSRM_Pos (26U)
19796
+ #define TIM_BDTR_BKDSRM_Msk (0x1UL << TIM_BDTR_BKDSRM_Pos) /*!< 0x04000000 */
19797
+ #define TIM_BDTR_BKDSRM TIM_BDTR_BKDSRM_Msk /*!<Break Disarm */
19798
+ #define TIM_BDTR_BK2DSRM_Pos (27U)
19799
+ #define TIM_BDTR_BK2DSRM_Msk (0x1UL << TIM_BDTR_BK2DSRM_Pos) /*!< 0x08000000 */
19800
+ #define TIM_BDTR_BK2DSRM TIM_BDTR_BK2DSRM_Msk /*!<Break2 Disarm */
19801
+ #define TIM_BDTR_BKBID_Pos (28U)
19802
+ #define TIM_BDTR_BKBID_Msk (0x1UL << TIM_BDTR_BKBID_Pos) /*!< 0x10000000 */
19803
+ #define TIM_BDTR_BKBID TIM_BDTR_BKBID_Msk /*!<Break Bidirectional */
19804
+ #define TIM_BDTR_BK2BID_Pos (29U)
19805
+ #define TIM_BDTR_BK2BID_Msk (0x1UL << TIM_BDTR_BK2BID_Pos) /*!< 0x20000000 */
19806
+ #define TIM_BDTR_BK2BID TIM_BDTR_BK2BID_Msk /*!<Break2 Bidirectional */
19785
19807
19786
19808
/******************* Bit definition for TIM_DCR register ********************/
19787
19809
#define TIM_DCR_DBA_Pos (0U)
@@ -19816,8 +19838,8 @@ typedef struct
19816
19838
#define TIM_CCMR3_OC5PE TIM_CCMR3_OC5PE_Msk /*!<Output Compare 5 Preload enable */
19817
19839
19818
19840
#define TIM_CCMR3_OC5M_Pos (4U)
19819
- #define TIM_CCMR3_OC5M_Msk (0x7UL << TIM_CCMR3_OC5M_Pos) /*!< 0x00000070 */
19820
- #define TIM_CCMR3_OC5M TIM_CCMR3_OC5M_Msk /*!<OC5M[2 :0] bits (Output Compare 5 Mode) */
19841
+ #define TIM_CCMR3_OC5M_Msk (0x1007UL << TIM_CCMR3_OC5M_Pos) /*!< 0x00010070 */
19842
+ #define TIM_CCMR3_OC5M TIM_CCMR3_OC5M_Msk /*!<OC5M[3 :0] bits (Output Compare 5 Mode) */
19821
19843
#define TIM_CCMR3_OC5M_0 (0x1UL << TIM_CCMR3_OC5M_Pos) /*!< 0x00000010 */
19822
19844
#define TIM_CCMR3_OC5M_1 (0x2UL << TIM_CCMR3_OC5M_Pos) /*!< 0x00000020 */
19823
19845
#define TIM_CCMR3_OC5M_2 (0x4UL << TIM_CCMR3_OC5M_Pos) /*!< 0x00000040 */
@@ -19835,12 +19857,12 @@ typedef struct
19835
19857
#define TIM_CCMR3_OC6PE TIM_CCMR3_OC6PE_Msk /*!<Output Compare 4 Preload enable */
19836
19858
19837
19859
#define TIM_CCMR3_OC6M_Pos (12U)
19838
- #define TIM_CCMR3_OC6M_Msk (0x7UL << TIM_CCMR3_OC6M_Pos) /*!< 0x00007000 */
19839
- #define TIM_CCMR3_OC6M TIM_CCMR3_OC6M_Msk /*!<OC4M[2 :0] bits (Output Compare 4 Mode) */
19860
+ #define TIM_CCMR3_OC6M_Msk (0x1007UL << TIM_CCMR3_OC6M_Pos) /*!< 0x01007000 */
19861
+ #define TIM_CCMR3_OC6M TIM_CCMR3_OC6M_Msk /*!<OC4M[3 :0] bits (Output Compare 4 Mode) */
19840
19862
#define TIM_CCMR3_OC6M_0 (0x1UL << TIM_CCMR3_OC6M_Pos) /*!< 0x00001000 */
19841
19863
#define TIM_CCMR3_OC6M_1 (0x2UL << TIM_CCMR3_OC6M_Pos) /*!< 0x00002000 */
19842
19864
#define TIM_CCMR3_OC6M_2 (0x4UL << TIM_CCMR3_OC6M_Pos) /*!< 0x00004000 */
19843
- #define TIM_CCMR3_OC6M_3 (0x100UL << TIM_CCMR3_OC6M_Pos) /*!< 0x00100000 */
19865
+ #define TIM_CCMR3_OC6M_3 (0x1000UL << TIM_CCMR3_OC6M_Pos) /*!< 0x01000000 */
19844
19866
19845
19867
#define TIM_CCMR3_OC6CE_Pos (15U)
19846
19868
#define TIM_CCMR3_OC6CE_Msk (0x1UL << TIM_CCMR3_OC6CE_Pos) /*!< 0x00008000 */
@@ -23968,6 +23990,7 @@ typedef struct
23968
23990
((INSTANCE) == TIM4) || \
23969
23991
((INSTANCE) == TIM5) || \
23970
23992
((INSTANCE) == TIM8) || \
23993
+ ((INSTANCE) == TIM12) || \
23971
23994
((INSTANCE) == TIM15) || \
23972
23995
((INSTANCE) == TIM23) || \
23973
23996
((INSTANCE) == TIM24))
@@ -23980,6 +24003,7 @@ typedef struct
23980
24003
((INSTANCE) == TIM4) || \
23981
24004
((INSTANCE) == TIM5) || \
23982
24005
((INSTANCE) == TIM8) || \
24006
+ ((INSTANCE) == TIM12) || \
23983
24007
((INSTANCE) == TIM15) || \
23984
24008
((INSTANCE) == TIM23) || \
23985
24009
((INSTANCE) == TIM24))
@@ -24231,4 +24255,3 @@ typedef struct
24231
24255
24232
24256
#endif /* STM32H723xx_H */
24233
24257
24234
- /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
0 commit comments