Skip to content

Commit 18f2d8d

Browse files
author
Jenny Plunkett
committed
Added software flow control pins
1 parent f00872a commit 18f2d8d

File tree

1 file changed

+10
-6
lines changed

1 file changed

+10
-6
lines changed

targets/TARGET_TI/TARGET_CC32XX/TARGET_CC3220SF/serial_api.c

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -304,12 +304,6 @@ int serial_writable(serial_t *obj) {
304304

305305
void serial_clear(serial_t *obj) {
306306
obj->uart->DR = 0x00;
307-
/**
308-
obj->uart->FCR = 1 << 0 // FIFO Enable - 0 = Disables, 1 = Enabled
309-
| 1 << 1 // rx FIFO reset
310-
| 1 << 2 // tx FIFO reset
311-
| 0 << 6; // interrupt depth
312-
**/
313307
}
314308

315309
void serial_pinout_tx(PinName tx) {
@@ -332,25 +326,35 @@ void serial_set_flow_control(serial_t *obj, FlowControl type, PinName rxflow, Pi
332326
switch(type) {
333327
case FlowControlRTS:
334328
pinmap_pinout(rxflow, PinMap_UART_RTS);
329+
uart_data[obj->index].sw_rts.pin = rxflow;
330+
uart_data[obj->index].sw_cts.pin = NC;
335331
MAP_UARTFlowControlSet(obj->baseAddr, UART_FLOWCONTROL_RX);
336332
break;
337333

338334
case FlowControlCTS:
339335
pinmap_pinout(txflow, PinMap_UART_CTS);
336+
uart_data[obj->index].sw_rts.pin = NC;
337+
uart_data[obj->index].sw_cts.pin = txflow;
340338
MAP_UARTFlowControlSet(obj->baseAddr, UART_FLOWCONTROL_TX);
341339
break;
342340

343341
case FlowControlRTSCTS:
344342
pinmap_pinout(rxflow, PinMap_UART_RTS);
345343
pinmap_pinout(txflow, PinMap_UART_CTS);
344+
uart_data[obj->index].sw_rts.pin = rxflow;
345+
uart_data[obj->index].sw_cts.pin = txflow;
346346
MAP_UARTFlowControlSet(obj->baseAddr, UART_FLOWCONTROL_TX | UART_FLOWCONTROL_RX);
347347
break;
348348

349349
case FlowControlNone:
350+
uart_data[obj->index].sw_rts.pin = NC;
351+
uart_data[obj->index].sw_cts.pin = NC;
350352
MAP_UARTFlowControlSet(obj->baseAddr, UART_FLOWCONTROL_NONE);
351353
break;
352354

353355
default:
356+
uart_data[obj->index].sw_rts.pin = NC;
357+
uart_data[obj->index].sw_cts.pin = NC;
354358
MAP_UARTFlowControlSet(obj->baseAddr, UART_FLOWCONTROL_NONE);
355359
break;
356360
}

0 commit comments

Comments
 (0)