MODSERIAL with support for more devices + f767

Committer:
dimavb
Date:
Mon Sep 30 16:23:18 2019 +0000
Revision:
47:5c21920f187e
add f767

Who changed what in which revision?

UserRevisionLine numberNew contents of line
dimavb 47:5c21920f187e 1 #if defined(TARGET_NUCLEO_F767ZI)
dimavb 47:5c21920f187e 2
dimavb 47:5c21920f187e 3
dimavb 47:5c21920f187e 4 #define MODSERIAL_IRQ_REG ((USART_TypeDef*)_base)->CR1 //found in mbed-dev\targets\TARGET_STM\TARGET_STM32F7\TARGET_STM32F746xG\device\stm32f746xx.h
dimavb 47:5c21920f187e 5 #define DISABLE_TX_IRQ MODSERIAL_IRQ_REG &= ~USART_CR1_TXEIE
dimavb 47:5c21920f187e 6 #define DISABLE_RX_IRQ MODSERIAL_IRQ_REG &= ~USART_CR1_RXNEIE
dimavb 47:5c21920f187e 7 #define ENABLE_TX_IRQ MODSERIAL_IRQ_REG |= USART_CR1_TXEIE
dimavb 47:5c21920f187e 8 #define ENABLE_RX_IRQ MODSERIAL_IRQ_REG |= USART_CR1_RXNEIE
dimavb 47:5c21920f187e 9
dimavb 47:5c21920f187e 10 #define MODSERIAL_READ_REG ((USART_TypeDef*)_base)->RDR
dimavb 47:5c21920f187e 11 #define MODSERIAL_WRITE_REG ((USART_TypeDef*)_base)->TDR
dimavb 47:5c21920f187e 12 #define MODSERIAL_READABLE ((((USART_TypeDef*)_base)->ISR & USART_ISR_RXNE) != 0)
dimavb 47:5c21920f187e 13 #define MODSERIAL_WRITABLE ((((USART_TypeDef*)_base)->ISR & USART_ISR_TXE) != 0)
dimavb 47:5c21920f187e 14
dimavb 47:5c21920f187e 15 #define RESET_TX_FIFO while(0 == 1)
dimavb 47:5c21920f187e 16 #define RESET_RX_FIFO while(MODSERIAL_READABLE) char dummy = MODSERIAL_READ_REG
dimavb 47:5c21920f187e 17
dimavb 47:5c21920f187e 18 #define RX_IRQ_ENABLED ((MODSERIAL_IRQ_REG & USART_CR1_RXNEIE) != 0)
dimavb 47:5c21920f187e 19 #define TX_IRQ_ENABLED ((MODSERIAL_IRQ_REG & USART_CR1_TXEIE) != 0)
dimavb 47:5c21920f187e 20 #endif