44#if defined(USE_FULL_DDL_DRIVER)
52#define ASSERT_PARAM(_PARAM_) ((void)0U)
59#if defined (USART1) || defined (USART2)
84#define IS_DDL_USART_BAUDRATE(__BAUDRATE__) ((__BAUDRATE__) <= 12500000U)
87#define IS_DDL_USART_BR_MIN(__VALUE__) ((__VALUE__) >= 16U)
89#define IS_DDL_USART_DIRECTION(__VALUE__) (((__VALUE__) == DDL_USART_DIRECTION_NONE) \
90 || ((__VALUE__) == DDL_USART_DIRECTION_RX) \
91 || ((__VALUE__) == DDL_USART_DIRECTION_TX) \
92 || ((__VALUE__) == DDL_USART_DIRECTION_TX_RX))
94#define IS_DDL_USART_PARITY(__VALUE__) (((__VALUE__) == DDL_USART_PARITY_NONE) \
95 || ((__VALUE__) == DDL_USART_PARITY_EVEN) \
96 || ((__VALUE__) == DDL_USART_PARITY_ODD))
98#define IS_DDL_USART_DATAWIDTH(__VALUE__) (((__VALUE__) == DDL_USART_DATAWIDTH_8B) \
99 || ((__VALUE__) == DDL_USART_DATAWIDTH_9B))
101#define IS_DDL_USART_OVERSAMPLING(__VALUE__) (((__VALUE__) == DDL_USART_OVERSAMPLING_16) \
102 || ((__VALUE__) == DDL_USART_OVERSAMPLING_8))
104#define IS_DDL_USART_LASTBITCLKOUTPUT(__VALUE__) (((__VALUE__) == DDL_USART_LASTCLKPULSE_NO_OUTPUT) \
105 || ((__VALUE__) == DDL_USART_LASTCLKPULSE_OUTPUT))
107#define IS_DDL_USART_CLOCKPHASE(__VALUE__) (((__VALUE__) == DDL_USART_PHASE_1EDGE) \
108 || ((__VALUE__) == DDL_USART_PHASE_2EDGE))
110#define IS_DDL_USART_CLOCKPOLARITY(__VALUE__) (((__VALUE__) == DDL_USART_POLARITY_LOW) \
111 || ((__VALUE__) == DDL_USART_POLARITY_HIGH))
113#define IS_DDL_USART_CLOCKOUTPUT(__VALUE__) (((__VALUE__) == DDL_USART_CLOCK_DISABLE) \
114 || ((__VALUE__) == DDL_USART_CLOCK_ENABLE))
116#define IS_DDL_USART_STOPBITS(__VALUE__) (((__VALUE__) == DDL_USART_STOPBITS_0_5) \
117 || ((__VALUE__) == DDL_USART_STOPBITS_1) \
118 || ((__VALUE__) == DDL_USART_STOPBITS_1_5) \
119 || ((__VALUE__) == DDL_USART_STOPBITS_2))
121#define IS_DDL_USART_HWCONTROL(__VALUE__) (((__VALUE__) == DDL_USART_HWCONTROL_NONE) \
122 || ((__VALUE__) == DDL_USART_HWCONTROL_RTS) \
123 || ((__VALUE__) == DDL_USART_HWCONTROL_CTS) \
124 || ((__VALUE__) == DDL_USART_HWCONTROL_RTS_CTS))
150 ErrorStatus status = SUCCESS;
157 if (USARTx == USART1)
165 else if (USARTx == USART2)
196 ErrorStatus status = ERROR;
221 MODIFY_REG(USARTx->CTRL1,
222 (USART_CTRL1_DBLCFG | USART_CTRL1_PCEN | USART_CTRL1_PCFG |
223 USART_CTRL1_TXEN | USART_CTRL1_RXEN | USART_CTRL1_OSMCFG),
252 && (USART_InitStruct->
BaudRate != 0U))
301 ErrorStatus status = SUCCESS;
337 MODIFY_REG(USARTx->CTRL2,
338 USART_CTRL2_CLKEN | USART_CTRL2_CPHA | USART_CTRL2_CPOL | USART_CTRL2_LBCPOEN,
G32 assert template file. This file should be copied to the application folder and renamed to g32_ass...
#define ASSERT_PARAM(_PARAM_)
Header file of RCM DDL module.
Header file of USART DDL module.
#define DDL_RCM_APB_RESET_USART1
#define DDL_RCM_APB_RESET_USART2
#define DDL_RCM_PERIPH_FREQUENCY_NO
void DDL_RCM_GetSystemClocksFreq(DDL_RCM_ClocksTypeDef *RCM_Clocks)
Return the frequencies of different on chip clocks; System, AHB, APB buses clocks.
__STATIC_INLINE void DDL_RCM_Unlock(void)
Unlock the RCM register.
__STATIC_INLINE void DDL_RCM_EnableAPBReset(uint32_t Peripheral)
Enable the APB peripheral reset.
__STATIC_INLINE void DDL_RCM_DisableAPBReset(uint32_t Peripheral)
Disable the APB peripheral reset.
#define DDL_USART_CLOCK_DISABLE
#define DDL_USART_DATAWIDTH_8B
#define DDL_USART_DIRECTION_TX_RX
#define DDL_USART_HWCONTROL_NONE
#define DDL_USART_LASTCLKPULSE_NO_OUTPUT
#define DDL_USART_OVERSAMPLING_16
#define DDL_USART_PARITY_NONE
#define DDL_USART_PHASE_1EDGE
#define DDL_USART_POLARITY_LOW
#define DDL_USART_STOPBITS_1
__STATIC_INLINE uint32_t DDL_USART_IsEnabled(USART_TypeDef *USARTx)
Indicate if USART is enabled.
__STATIC_INLINE void DDL_USART_SetHWFlowCtrl(USART_TypeDef *USARTx, uint32_t HardwareFlowControl)
Configure HW Flow Control mode (both CTS and RTS).
__STATIC_INLINE void DDL_USART_SetBaudRate(USART_TypeDef *USARTx, uint32_t PeriphClk, uint32_t OverSampling, uint32_t BaudRate)
Configure USART BRR register for achieving expected Baud Rate value.
__STATIC_INLINE void DDL_USART_SetStopBitsLength(USART_TypeDef *USARTx, uint32_t StopBits)
Set the length of the stop bits.
__STATIC_INLINE void DDL_USART_DisableSCLKOutput(USART_TypeDef *USARTx)
Disable Clock output on SCLK pin.
void DDL_USART_StructInit(DDL_USART_InitTypeDef *USART_InitStruct)
Set each DDL_USART_InitTypeDef field to default value.
ErrorStatus DDL_USART_Init(USART_TypeDef *USARTx, DDL_USART_InitTypeDef *USART_InitStruct)
Initialize USART registers according to the specified parameters in USART_InitStruct.
ErrorStatus DDL_USART_ClockInit(USART_TypeDef *USARTx, DDL_USART_ClockInitTypeDef *USART_ClockInitStruct)
Initialize USART Clock related settings according to the specified parameters in the USART_ClockInitS...
ErrorStatus DDL_USART_DeInit(USART_TypeDef *USARTx)
De-initialize USART registers (Registers restored to their default values).
void DDL_USART_ClockStructInit(DDL_USART_ClockInitTypeDef *USART_ClockInitStruct)
Set each field of a DDL_USART_ClockInitTypeDef type structure to default value.
#define IS_DDL_USART_DIRECTION(__VALUE__)
#define IS_DDL_USART_DATAWIDTH(__VALUE__)
#define IS_DDL_USART_CLOCKPHASE(__VALUE__)
#define IS_DDL_USART_CLOCKPOLARITY(__VALUE__)
#define IS_DDL_USART_STOPBITS(__VALUE__)
#define IS_DDL_USART_HWCONTROL(__VALUE__)
#define IS_DDL_USART_LASTBITCLKOUTPUT(__VALUE__)
#define IS_DDL_USART_PARITY(__VALUE__)
#define IS_DDL_USART_BAUDRATE(__BAUDRATE__)
#define IS_DDL_USART_BR_MIN(__VALUE__)
#define IS_DDL_USART_OVERSAMPLING(__VALUE__)
#define IS_DDL_USART_CLOCKOUTPUT(__VALUE__)
RCM Clocks Frequency Structure.
LL USART Clock Init Structure definition.
uint32_t LastBitClockPulse
LL USART Init Structure definition.
uint32_t TransferDirection
uint32_t HardwareFlowControl