diff --git a/src/knx/tpuart_data_link_layer.cpp b/src/knx/tpuart_data_link_layer.cpp index 627daf0..ac14581 100644 --- a/src/knx/tpuart_data_link_layer.cpp +++ b/src/knx/tpuart_data_link_layer.cpp @@ -1204,19 +1204,19 @@ void TpUartDataLinkLayer::processRxQueue() void TpUartDataLinkLayer::pushByteToRxQueue(uint8_t byte) { _rxBuffer[_rxBufferFront] = byte; - _rxBufferFront = (_rxBufferFront + 1) % MAX_RX_QUEUE_BYTES; + _rxBufferFront = (_rxBufferFront + 1) % (MAX_RX_QUEUE_BYTES); } uint8_t TpUartDataLinkLayer::pullByteFromRxQueue() { uint8_t byte = _rxBuffer[_rxBufferRear]; - _rxBufferRear = (_rxBufferRear + 1) % MAX_RX_QUEUE_BYTES; + _rxBufferRear = (_rxBufferRear + 1) % (MAX_RX_QUEUE_BYTES); return byte; } uint16_t TpUartDataLinkLayer::availableInRxQueue() { - return ((_rxBufferFront == _rxBufferRear) ? MAX_RX_QUEUE_BYTES : (((MAX_RX_QUEUE_BYTES - _rxBufferFront) + _rxBufferRear) % MAX_RX_QUEUE_BYTES)) - 1; + return ((_rxBufferFront == _rxBufferRear) ? (MAX_RX_QUEUE_BYTES) : ((((MAX_RX_QUEUE_BYTES) - _rxBufferFront) + _rxBufferRear) % (MAX_RX_QUEUE_BYTES))) - 1; } #endif