Avoid 64-bit integer division in LPUART.

This commit is contained in:
iabdalkader 2018-03-25 01:08:43 +02:00
parent e3f08179fb
commit eef37ce696

View File

@ -1141,7 +1141,7 @@ static const uint16_t UARTPrescTable[12] = {1, 2, 4, 6, 8, 10, 12, 16, 32, 64, 1
* @param __PRESCALER__: UART prescaler value. * @param __PRESCALER__: UART prescaler value.
* @retval Division result * @retval Division result
*/ */
#define UART_DIV_LPUART(__PCLK__, __BAUD__, __PRESCALER__) ((((((uint64_t)(__PCLK__)/UARTPrescTable[(__PRESCALER__)])*256)) + ((__BAUD__)/2)) / (__BAUD__)) #define UART_DIV_LPUART(__PCLK__, __BAUD__, __PRESCALER__) ((((((uint32_t)(__PCLK__)/UARTPrescTable[(__PRESCALER__)])*256)) + ((__BAUD__)/2)) / (__BAUD__))
/** @brief BRR division operation to set BRR register in 8-bit oversampling mode. /** @brief BRR division operation to set BRR register in 8-bit oversampling mode.
* @param __PCLK__: UART clock. * @param __PCLK__: UART clock.