Bonjour a tous, je suis entrain d’étudié un programme pour effectuer une liaison UART entre 2 carte STM32F429 et je bloque sur des conditions ternaires:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
((((__INTERRUPT__) >> 28) == 1)? ((__HANDLE__)->Instance->CR1 |= ((__INTERRUPT__) & UART_IT_MASK)): \
(((__INTERRUPT__) >> 28) == 2)? ((__HANDLE__)->Instance->CR2 |=  ((__INTERRUPT__) & UART_IT_MASK)): \
((__HANDLE__)->Instance->CR3 |= ((__INTERRUPT__) & UART_IT_MASK)))
Dans ces lignes j'ai repéré comme opérateurs ?: (condition), |= (Affectation OU entre bits), >> (decalage a droite), & (ET entre bits) mais difficile a dechiffrer pour moi.

SI quelqu’un peut m'aider a comprendre ces quelques lignes je l'en remercie d'avance.