1 /**
2   ******************************************************************************
3   * @file    tae32f53xx_ll.h
4   * @author  MCD Application Team
5   * @brief   This file contains all the functions prototypes for the LL
6   *          module driver.
7   *
8   ******************************************************************************
9   * @attention
10   *
11   * <h2><center>&copy; Copyright (c) 2020 Tai-Action.
12   * All rights reserved.</center></h2>
13   *
14   * This software is licensed by Tai-Action under BSD 3-Clause license,
15   * the "License"; You may not use this file except in compliance with the
16   * License. You may obtain a copy of the License at:
17   *                        opensource.org/licenses/BSD-3-Clause
18   *
19   ******************************************************************************
20   */
21 
22 /* Define to prevent recursive inclusion -------------------------------------*/
23 #ifndef _TAE32F53XX_LL_H_
24 #define _TAE32F53XX_LL_H_
25 
26 #ifdef __cplusplus
27 extern "C" {
28 #endif /* __cplusplus */
29 
30 /* Includes ------------------------------------------------------------------*/
31 #include "tae32f53xx_ll_conf.h"
32 
33 
34 /** @addtogroup TAE32F53xx_LL_Driver
35   * @{
36   */
37 
38 /** @addtogroup TAE32F53xx_LL
39   * @{
40   */
41 
42 
43 /* Exported constants --------------------------------------------------------*/
44 /** @defgroup TAE32F53xx_LL_Exported_Constants TAE32F53xx LL Exported Constants
45   * @brief    TAE32F53xx LL Exported Constants
46   * @{
47   */
48 
49 /**
50   * @brief TAE32F53xx LL Driver version number V1.2.0
51   */
52 #define __TAE32F53xx_LL_VERSION_MAIN    (0x01U)     /*!< [31:24] main version       */
53 #define __TAE32F53xx_LL_VERSION_SUB1    (0x02U)     /*!< [23:16] sub1 version       */
54 #define __TAE32F53xx_LL_VERSION_SUB2    (0x00U)     /*!< [15:8]  sub2 version       */
55 #define __TAE32F53xx_LL_VERSION_RC      (0x00U)     /*!< [7:0]  release candidate   */
56 #define __TAE32F53xx_LL_VERSION         ((__TAE32F53xx_LL_VERSION_MAIN << 24) |\
57                                          (__TAE32F53xx_LL_VERSION_SUB1 << 16) |\
58                                          (__TAE32F53xx_LL_VERSION_SUB2 << 8 ) |\
59                                          (__TAE32F53xx_LL_VERSION_RC))
60 
61 /**
62   * @brief TAE32F53xx SDK Stage String definition
63   * @note  Value range: "Alpha" "Beta" "RC" "Trial" "Release"
64   */
65 #define SDK_STAGE_STR                   "Release"
66 
67 /**
68   * @}
69   */
70 
71 /* Exported types ------------------------------------------------------------*/
72 /** @defgroup TAE32F53xx_LL_Exported_Types TAE32F53xx LL Exported Types
73   * @brief    TAE32F53xx LL Exported Types
74   * @{
75   */
76 
77 /**
78   * LL Tick Freq Enum Type Definition
79   */
80 typedef enum {
81     LL_TICK_FREQ_10HZ    = 100U,                /*!< Tick Frequency 10Hz    */
82     LL_TICK_FREQ_100HZ   = 10U,                 /*!< Tick Frequency 100Hz   */
83     LL_TICK_FREQ_1KHZ    = 1U,                  /*!< Tick Frequency 1KHz    */
84     LL_TICK_FREQ_DEFAULT = LL_TICK_FREQ_1KHZ,   /*!< Tick Frequency default */
85 } LL_TickFreqETypeDef;
86 
87 /**
88   * @}
89   */
90 
91 /* Exported macro ------------------------------------------------------------*/
92 /* Exported functions --------------------------------------------------------*/
93 /** @addtogroup TAE32F53xx_LL_Exported_Functions
94   * @{
95   */
96 
97 /** @addtogroup TAE32F53xx_LL_Exported_Functions_Group1
98   * @{
99   */
100 LL_StatusETypeDef LL_Init(void);
101 LL_StatusETypeDef LL_DeInit(void);
102 void LL_MspInit(void);
103 void LL_MspDeInit(void);
104 
105 LL_StatusETypeDef LL_InitTick(uint32_t TickPriority);
106 /**
107   * @}
108   */
109 
110 
111 /** @addtogroup TAE32F53xx_LL_Exported_Functions_Group2
112   * @{
113   */
114 void LL_IncTick(void);
115 uint32_t LL_GetTick(void);
116 uint32_t LL_GetTickPrio(void);
117 LL_StatusETypeDef LL_SetTickFreq(LL_TickFreqETypeDef Freq);
118 LL_TickFreqETypeDef LL_GetTickFreq(void);
119 void LL_SuspendTick(void);
120 void LL_ResumeTick(void);
121 void LL_Delay(uint32_t Delay);
122 uint32_t LL_GetHalVersion(void);
123 void LL_GetUID(uint32_t *UID[4]);
124 /**
125   * @}
126   */
127 
128 
129 /** @addtogroup TAE32F53xx_LL_Exported_Functions_Group3
130   * @{
131   */
132 void LL_ShowInfo(void);
133 void delay_ms(uint32_t ms);
134 void printf_array(void *ptr, uint32_t len);
135 /**
136   * @}
137   */
138 
139 /**
140   * @}
141   */
142 
143 /* Private types -------------------------------------------------------------*/
144 /* Private variables ---------------------------------------------------------*/
145 /* Private constants ---------------------------------------------------------*/
146 /* Private macros ------------------------------------------------------------*/
147 /* Private functions ---------------------------------------------------------*/
148 
149 /**
150   * @}
151   */
152 
153 /**
154   * @}
155   */
156 
157 
158 #ifdef __cplusplus
159 }
160 #endif /* __cplusplus */
161 
162 #endif /* _TAE32F53XX_LL_H_ */
163 
164 
165 /************************* (C) COPYRIGHT Tai-Action *****END OF FILE***********/
166 
167