| int serial_set_cts(uint8_t pin) | int serial_set_cts(uint8_t pin) | ||||
| { | { | ||||
| #if defined(KINETISK) | |||||
| if (!(SIM_SCGC4 & SIM_SCGC4_UART0)) return 0; | if (!(SIM_SCGC4 & SIM_SCGC4_UART0)) return 0; | ||||
| if (pin == 18) { | if (pin == 18) { | ||||
| CORE_PIN18_CONFIG = PORT_PCR_MUX(3) | PORT_PCR_PE; // weak pulldown | CORE_PIN18_CONFIG = PORT_PCR_MUX(3) | PORT_PCR_PE; // weak pulldown | ||||
| } | } | ||||
| UART0_MODEM |= UART_MODEM_TXCTSE; | UART0_MODEM |= UART_MODEM_TXCTSE; | ||||
| return 1; | return 1; | ||||
| #else | |||||
| return 0; | |||||
| #endif | |||||
| } | } | ||||
| void serial_putchar(uint32_t c) | void serial_putchar(uint32_t c) |
| int serial2_set_cts(uint8_t pin) | int serial2_set_cts(uint8_t pin) | ||||
| { | { | ||||
| #if defined(KINETISK) | |||||
| if (!(SIM_SCGC4 & SIM_SCGC4_UART1)) return 0; | if (!(SIM_SCGC4 & SIM_SCGC4_UART1)) return 0; | ||||
| if (pin == 23) { | if (pin == 23) { | ||||
| CORE_PIN23_CONFIG = PORT_PCR_MUX(3) | PORT_PCR_PE; // weak pulldown | CORE_PIN23_CONFIG = PORT_PCR_MUX(3) | PORT_PCR_PE; // weak pulldown | ||||
| } | } | ||||
| UART1_MODEM |= UART_MODEM_TXCTSE; | UART1_MODEM |= UART_MODEM_TXCTSE; | ||||
| return 1; | return 1; | ||||
| #else | |||||
| return 0; | |||||
| #endif | |||||
| } | } | ||||
| void serial2_putchar(uint32_t c) | void serial2_putchar(uint32_t c) |
| int serial3_set_cts(uint8_t pin) | int serial3_set_cts(uint8_t pin) | ||||
| { | { | ||||
| #if defined(KINETISK) | |||||
| if (!(SIM_SCGC4 & SIM_SCGC4_UART2)) return 0; | if (!(SIM_SCGC4 & SIM_SCGC4_UART2)) return 0; | ||||
| if (pin == 14) { | if (pin == 14) { | ||||
| CORE_PIN14_CONFIG = PORT_PCR_MUX(3) | PORT_PCR_PE; // weak pulldown | CORE_PIN14_CONFIG = PORT_PCR_MUX(3) | PORT_PCR_PE; // weak pulldown | ||||
| } | } | ||||
| UART2_MODEM |= UART_MODEM_TXCTSE; | UART2_MODEM |= UART_MODEM_TXCTSE; | ||||
| return 1; | return 1; | ||||
| #else | |||||
| return 0; | |||||
| #endif | |||||
| } | } | ||||
| void serial3_putchar(uint32_t c) | void serial3_putchar(uint32_t c) |