Extend STM mbed board. Thanks Y.Kuroda-san for creating good function.
Dependents: Frequency_Counter_w_GPS_1PPS FreqCntr_GPS1PPS_F746F4xx_w_recipro
Fork of iSerial by
Diff: iSerial_DISCOF746.h
- Revision:
- 11:6bea021727a1
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/iSerial_DISCOF746.h Wed Nov 16 13:05:47 2016 +0000 @@ -0,0 +1,80 @@ +#if defined(TARGET_STM32F746NG) || defined(TARGET_STM32F746ZG) +//////////////////////////////////////////////////////////////////////////////// +// UART Interrupt handler +// +// This is a dummy program !! +// iSerial does NOT work for F746 cpu +// due to CIMMIS interface problem(?) as of November 13th, 2016. +// Following part of function does not work in iSerial.cpp. +/* + attach(this, &iSerial::tx_handler, Serial::TxIrq); + attach(this, &iSerial::rx_handler, Serial::RxIrq); +*/ +// mbed revision (as of today) -> 129 +// +//////////////////////////////////////////////////////////////////////////////// + +#if 1 + +void iSerial::enable_uart_irq(void){ ;/* dummy */ } +void iSerial::disable_uart_irq(void){ ;/* dummy */ } + +#else + +void +iSerial::enable_uart_irq(void) +{ + switch(tx) { + case USBTX: + NVIC_EnableIRQ(USART3_IRQn); + break; +// case SERIAL_TX: +// case PA_2: +// case D1: + case PD_6: + NVIC_EnableIRQ(USART2_IRQn); + break; + case PA_9: +// case D8: + NVIC_EnableIRQ(USART1_IRQn); + break; + case PA_11: + case PC_6: + NVIC_EnableIRQ(USART6_IRQn); + break; + case PC_11: +// NVIC_EnableIRQ(USART4_IRQn); + break; + } +} + +void +iSerial::disable_uart_irq(void) +{ + switch(tx) { + case USBTX: + NVIC_DisableIRQ(USART3_IRQn); + break; +// case SERIAL_TX: +// case PA_2: +// case D1: + case PD_6: + NVIC_DisableIRQ(USART2_IRQn); + break; + case PA_9: +// case D8: + NVIC_DisableIRQ(USART1_IRQn); + break; + case PA_11: + case PC_6: + NVIC_DisableIRQ(USART6_IRQn); + break; + case PC_11: +// NVIC_DisableIRQ(USART4_IRQn); + break; + } +} + +#endif + +#endif \ No newline at end of file