Skip to content
Snippets Groups Projects
Commit 4be5b3bc authored by Anian Bühler's avatar Anian Bühler
Browse files

added .begin() method

parent 04444b33
No related branches found
No related tags found
1 merge request!1added .begin() method
...@@ -48,7 +48,8 @@ void setup() { ...@@ -48,7 +48,8 @@ void setup() {
sSerial.begin(SERIAL_BAUD); sSerial.begin(SERIAL_BAUD);
//Lege fest welche Serielle Schnittstelle für sPSN verwendet werden soll //Lege fest welche Serielle Schnittstelle für sPSN verwendet werden soll
psnBroker.setStream(sSerial); //psnBroker.setStream(sSerial);
psnBroker.begin(sSerial);
} }
void loop() { void loop() {
......
...@@ -67,10 +67,12 @@ void setup() { ...@@ -67,10 +67,12 @@ void setup() {
sSerial.begin(SERIAL_BAUD); sSerial.begin(SERIAL_BAUD);
//Lege fest welche Serielle Schnittstelle für sPSN verwendet werden soll //Lege fest welche Serielle Schnittstelle für sPSN verwendet werden soll
psnClient.setStream(sSerial); //psnClient.setStream(sSerial);
//Lege Callback-Funktion fest (wird ausgeführt wenn neue Daten ankommen) //Lege Callback-Funktion fest (wird ausgeführt wenn neue Daten ankommen)
psnClient.setCallback(myCallback); //psnClient.setCallback(myCallback);
psnClient.begin(sSerial, myCallback);
Serial.print("Bitte den eigenen Namen mit einem # eingeben\nund mit Enter bestaetigen. -> "); Serial.print("Bitte den eigenen Namen mit einem # eingeben\nund mit Enter bestaetigen. -> ");
Serial.println("#DeinName"); Serial.println("#DeinName");
......
...@@ -85,10 +85,12 @@ void setup() { ...@@ -85,10 +85,12 @@ void setup() {
pinMode(ledPin, OUTPUT); pinMode(ledPin, OUTPUT);
//Lege fest welche Serielle Schnittstelle für sPSN verwendet werden soll //Lege fest welche Serielle Schnittstelle für sPSN verwendet werden soll
psnClient.setStream(sSerial); //psnClient.setStream(sSerial);
//Lege Callback-Funktion fest (wird ausgeführt wenn neue Daten ankommen) //Lege Callback-Funktion fest (wird ausgeführt wenn neue Daten ankommen)
psnClient.setCallback(myCallback); //psnClient.setCallback(myCallback);
psnClient.begin(sSerial, myCallback);
//Lege fest zu welchem Topic Daten empfangen werden sollen //Lege fest zu welchem Topic Daten empfangen werden sollen
psnClient.subscribe(topicSub); psnClient.subscribe(topicSub);
......
...@@ -84,10 +84,12 @@ void setup() { ...@@ -84,10 +84,12 @@ void setup() {
pinMode(buttonPin, INPUT); pinMode(buttonPin, INPUT);
//Lege fest welche Serielle Schnittstelle für sPSN verwendet werden soll //Lege fest welche Serielle Schnittstelle für sPSN verwendet werden soll
psnClient.setStream(sSerial); //psnClient.setStream(sSerial);
//Lege Callback-Funktion fest (wird ausgeführt wenn neue Daten ankommen) //Lege Callback-Funktion fest (wird ausgeführt wenn neue Daten ankommen)
psnClient.setCallback(myCallback); //psnClient.setCallback(myCallback);
psnClient.begin(sSerial, myCallback);
//Lege fest zu welchem Topic Daten empfangen werden sollen //Lege fest zu welchem Topic Daten empfangen werden sollen
psnClient.subscribe(topicSub); psnClient.subscribe(topicSub);
......
...@@ -48,7 +48,8 @@ void setup() { ...@@ -48,7 +48,8 @@ void setup() {
sSerial.begin(SERIAL_BAUD); sSerial.begin(SERIAL_BAUD);
//Lege fest welche Serielle Schnittstelle für sPSN verwendet werden soll //Lege fest welche Serielle Schnittstelle für sPSN verwendet werden soll
psnBroker.setStream(sSerial); //psnBroker.setStream(sSerial);
psnClient.begin(sSerial);
} }
void loop() { void loop() {
......
...@@ -16,7 +16,16 @@ didacticPSNet::didacticPSNet(){} ...@@ -16,7 +16,16 @@ didacticPSNet::didacticPSNet(){}
didacticPSNet::~didacticPSNet(){} didacticPSNet::~didacticPSNet(){}
didacticPSNet& didacticPSNet::setCallback(void(*callback)(char*, int, char*, int)){ didacticPSNet::begin(Stream& _port){
setStream(_port);
}
didacticPSNet::begin(Stream& _port, PSNET_CALLBACK_SIGNATURE){
setStream(_port);
setCallback(callback);
}
didacticPSNet& didacticPSNet::setCallback(PSNET_CALLBACK_SIGNATURE){
this->callback = callback; this->callback = callback;
return *this; return *this;
} }
...@@ -39,6 +48,9 @@ bool didacticPSNet::handleNetwork(){ ...@@ -39,6 +48,9 @@ bool didacticPSNet::handleNetwork(){
} }
else if(_dataToSend){ else if(_dataToSend){
//send data to network //send data to network
//TODO: test added CSMA_CHECKDELAY + 2nd checkData()
delayMicroseconds(CSMA_CHECK_DELAY_US);
if(!checkData()){
if(!sendData()){ if(!sendData()){
return false; return false;
} }
...@@ -48,6 +60,7 @@ bool didacticPSNet::handleNetwork(){ ...@@ -48,6 +60,7 @@ bool didacticPSNet::handleNetwork(){
} }
} }
} }
}
return true; return true;
} }
......
...@@ -26,7 +26,7 @@ ...@@ -26,7 +26,7 @@
#define MSG_TOPIC_MULTI '*' #define MSG_TOPIC_MULTI '*'
#define CSMA_CHECK_DELAY_US 400 //unused? #define CSMA_CHECK_DELAY_US 400
#define CSMA_MIN_DELAY_MS 10 #define CSMA_MIN_DELAY_MS 10
#define CSMA_MID_DELAY_MS 20 #define CSMA_MID_DELAY_MS 20
#define CSMA_MAX_DELAY_MS 30 #define CSMA_MAX_DELAY_MS 30
...@@ -53,6 +53,9 @@ class didacticPSNet ...@@ -53,6 +53,9 @@ class didacticPSNet
int _currentTopicLength = 0; int _currentTopicLength = 0;
int _currentDataLength = 0; int _currentDataLength = 0;
didacticPSNet& setCallback(PSNET_CALLBACK_SIGNATURE);
void setStream(Stream& _port);
int checkData(); int checkData();
bool recieveData(); bool recieveData();
bool sendData(); bool sendData();
...@@ -68,8 +71,8 @@ class didacticPSNet ...@@ -68,8 +71,8 @@ class didacticPSNet
didacticPSNet(); didacticPSNet();
~didacticPSNet(); ~didacticPSNet();
didacticPSNet& setCallback(PSNET_CALLBACK_SIGNATURE); begin(Stream& _port);
void setStream(Stream& _port); begin(Stream& _port, PSNET_CALLBACK_SIGNATURE);
bool handleNetwork(); bool handleNetwork();
bool isDataToSend(); bool isDataToSend();
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please to comment