Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #pragma once
- #include "SerialClass.h" // Library described above
- #include "MyLib.h"
- Serial* CreatePort() {
- // select your port here
- Serial* Port = new Serial("\\\\.\\COM10");
- if (Port->IsConnected()) {
- std::cout << "Port is connected" << std::endl;
- }
- Sleep(500);
- return Port;
- }
- int ClosePort(Serial* serialPort) {
- delete serialPort;
- return 0;
- }
- std::string Rem_Spec_Char(std::string input) {
- std::string returnObject = "";
- for (int i = 0; i < input.length(); i++) {
- if (input[i] != '\r' && input[i] != '\n') {
- returnObject = returnObject +input[i];
- }
- }
- return returnObject;
- }
- std::vector <std::string> ArduinoFunction(Serial* serialPort, const char *data) {
- char incomingData[256] = "";
- std::string endData = "x203Done";
- std::string temp = "";
- std::string returnObject;
- std::vector <std::string> finalReturnObject;
- int dataLength = 255;
- int newdatalength = 1;
- int readResult = 0;
- if (serialPort->IsConnected())
- {
- const char *buffer = data;
- if (serialPort->WriteData(buffer, newdatalength)) {
- while (serialPort->IsConnected()) {
- readResult = serialPort->ReadData(incomingData, dataLength);
- incomingData[readResult] = 0;
- std::size_t found = temp.find(endData);
- temp = incomingData;
- if (found != std::string::npos) {
- returnObject = returnObject + incomingData;
- break;
- }
- else {
- if (incomingData != '\0' && *incomingData != '\n' && *incomingData != '\r' && *incomingData != ' ' && incomingData != "\r\n") {
- returnObject = returnObject + incomingData;
- }
- }
- Sleep(150);
- }
- }
- Sleep(100);
- }
- finalReturnObject = cstringsplit(returnObject, "\r\n");
- return finalReturnObject;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement