A library for talking to Multi-Tech's Cellular SocketModem Devices.

Dependents:   M2X_dev axeda_wrapper_dev MTS_M2x_Example1 MTS_Cellular_Connect_Example ... more

Committer:
mfiore
Date:
Wed Dec 11 20:07:02 2013 +0000
Revision:
2:8d3ea0dfce39
Parent:
0:563b70517320
Child:
10:2bd727a4b329
CircularBuffer template function definitions moved to header; implemented (but not tested) MTSSerialFlowControl

Who changed what in which revision?

UserRevisionLine numberNew contents of line
jengbrecht 0:563b70517320 1 #ifndef MTSSERIALFLOWCONTROL_H
jengbrecht 0:563b70517320 2 #define MTSSERIALFLOWCONTROL_H
jengbrecht 0:563b70517320 3
jengbrecht 0:563b70517320 4 #include "mbed.h"
jengbrecht 0:563b70517320 5 #include "MTSBufferedIO.h"
mfiore 2:8d3ea0dfce39 6
jengbrecht 0:563b70517320 7 class MTSSerialFlowControl : public MTSBufferedIO
jengbrecht 0:563b70517320 8 {
jengbrecht 0:563b70517320 9 public:
mfiore 2:8d3ea0dfce39 10 MTSSerialFlowControl(PinName TXD, PinName RXD, PinName RTS, PinName CTS, int txBufSize = 64, int rxBufSize = 64);
jengbrecht 0:563b70517320 11 ~MTSSerialFlowControl();
mfiore 2:8d3ea0dfce39 12
mfiore 2:8d3ea0dfce39 13 void notifyStartSending();
mfiore 2:8d3ea0dfce39 14 void notifyStopSending();
jengbrecht 0:563b70517320 15
jengbrecht 0:563b70517320 16 private:
mfiore 2:8d3ea0dfce39 17 InterruptIn* rts;
jengbrecht 0:563b70517320 18 DigitalOut* cts;
mfiore 2:8d3ea0dfce39 19 Serial* serial;
mfiore 2:8d3ea0dfce39 20 bool clearToSend;
mfiore 2:8d3ea0dfce39 21 int highThreshold;
mfiore 2:8d3ea0dfce39 22 int lowThreshold;
mfiore 2:8d3ea0dfce39 23
mfiore 2:8d3ea0dfce39 24 void startSending();
mfiore 2:8d3ea0dfce39 25 void stopSending();
mfiore 2:8d3ea0dfce39 26
mfiore 2:8d3ea0dfce39 27 virtual void handleRead();
mfiore 2:8d3ea0dfce39 28 virtual void handleWrite();
jengbrecht 0:563b70517320 29 };
mfiore 2:8d3ea0dfce39 30
jengbrecht 0:563b70517320 31 #endif /* MTSSERIALFLOWCONTROL */