Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependents: M2X_dev axeda_wrapper_dev MTS_M2x_Example1 MTS_Cellular_Connect_Example ... more
Diff: io/MTSSerialFlowControl.cpp
- Revision:
- 140:bf0c8288eb78
- Parent:
- 110:8f3149c99112
- Child:
- 141:571e0ef6c8dc
--- a/io/MTSSerialFlowControl.cpp Sat Jan 04 04:22:29 2014 +0000
+++ b/io/MTSSerialFlowControl.cpp Sat Jan 04 05:07:22 2014 +0000
@@ -2,11 +2,11 @@
using namespace mts;
-MTSSerialFlowControl::MTSSerialFlowControl(PinName TXD, PinName RXD, PinName RTS, PinName CTS, int txBufSize, int rxBufSize)
-: MTSSerial(TXD, RXD, txBufSize, rxBufSize)
-, rxReadyFlag(false)
-, rts(RTS)
-, cts(CTS)
+MTSSerialFlowControl::MTSSerialFlowControl(PinName TXD, PinName RXD, PinName RTS, PinName CTS, int txBufSize, int rxBufSize)
+ : MTSSerial(TXD, RXD, txBufSize, rxBufSize)
+ , rxReadyFlag(false)
+ , rts(RTS)
+ , cts(CTS)
{
notifyStartSending();
@@ -21,9 +21,10 @@
}
-void MTSSerialFlowControl::rxClear() {
+void MTSSerialFlowControl::rxClear()
+{
MTSBufferedIO::rxClear();
- notifyStartSending();
+ notifyStartSending();
}
void MTSSerialFlowControl::notifyStartSending()
@@ -52,6 +53,11 @@
rts.write(1);
rxReadyFlag = false;
printf("[ERROR] Serial Rx Byte Dropped [%c][0x%02X]\r\n", byte, byte);
+ if(byte == 0xFF) {
+ serial.attach(NULL, Serial::RxIrq);
+ serial.attach(this, &MTSSerialFlowControl::handleRead, Serial::RxIrq);
+ printf("[INFO] Reset the RxIrq.\n\r");
+ }
return;
}
if (rxBuffer.size() > highThreshold) {
uIP Socket Modem Shield (Outdated - see below)