In the mbed documentation LPC1768 there are many examples of serial communication implemented in a structured and disorganized way. So, I decided to make it very practical and reusable for other users who need to use this feature. For this, I created my own library based on the OO paradigm.

Dependencies:   mbed

In the mbed documentation LPC1768 there are many examples of serial communication implemented in a structured and disorganized way. So, I decided to make it very practical and reusable for other users who need to use this feature. For this, I created my own library based on the OO paradigm.

Committer:
waspSalander
Date:
Tue Sep 05 22:36:20 2017 +0000
Revision:
0:78c623c147d2
My own Serial Communication library.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
waspSalander 0:78c623c147d2 1 #include "SerialCommunication.h"
waspSalander 0:78c623c147d2 2
waspSalander 0:78c623c147d2 3 SerialCommunication::SerialCommunication(PinName tx, PinName rx, int baudRate): tx(tx), rx(rx){
waspSalander 0:78c623c147d2 4 serial = new Serial(tx, rx); // tx, rx
waspSalander 0:78c623c147d2 5 serial->baud(baudRate);
waspSalander 0:78c623c147d2 6 messageLength = 4; // tam palavra + 1 ('\n')
waspSalander 0:78c623c147d2 7
waspSalander 0:78c623c147d2 8 debug = new DigitalOut(LED1); // debug send info
waspSalander 0:78c623c147d2 9 }
waspSalander 0:78c623c147d2 10
waspSalander 0:78c623c147d2 11
waspSalander 0:78c623c147d2 12 int SerialCommunication::ReceiveCommand(){ // RECEIVE INFO
waspSalander 0:78c623c147d2 13
waspSalander 0:78c623c147d2 14 char commandReceived[messageLength];
waspSalander 0:78c623c147d2 15
waspSalander 0:78c623c147d2 16
waspSalander 0:78c623c147d2 17 if(serial->readable()){
waspSalander 0:78c623c147d2 18 serial->gets(commandReceived,messageLength);
waspSalander 0:78c623c147d2 19
waspSalander 0:78c623c147d2 20 if (strcmp(commandReceived, "s0b") == 0){ //s0b : ex de palavra q desejo receber"
waspSalander 0:78c623c147d2 21 return 1;
waspSalander 0:78c623c147d2 22 }
waspSalander 0:78c623c147d2 23 }
waspSalander 0:78c623c147d2 24 return 0;
waspSalander 0:78c623c147d2 25 }
waspSalander 0:78c623c147d2 26
waspSalander 0:78c623c147d2 27
waspSalander 0:78c623c147d2 28 void SerialCommunication::SendCommand(string commandSended){ // SEND INFO
waspSalander 0:78c623c147d2 29
waspSalander 0:78c623c147d2 30 // SEND INFO
waspSalander 0:78c623c147d2 31 //while(1){
waspSalander 0:78c623c147d2 32 serial->printf("%s",commandSended);
waspSalander 0:78c623c147d2 33 debug->write(1);
waspSalander 0:78c623c147d2 34 wait(DELAY_COMMAND);
waspSalander 0:78c623c147d2 35 debug->write(0);
waspSalander 0:78c623c147d2 36 wait(DELAY_COMMAND);
waspSalander 0:78c623c147d2 37 //}
waspSalander 0:78c623c147d2 38 }