|
|
|
@ -1,12 +1,17 @@
|
|
|
|
|
#include "pin.hpp"
|
|
|
|
|
#include "systemCall.hpp"
|
|
|
|
|
#include <fstream>
|
|
|
|
|
#include <iostream>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
char buffer[50];
|
|
|
|
|
char gpioNo = 17;
|
|
|
|
|
uint8_t currentPin = 0;
|
|
|
|
|
int ck = 0;
|
|
|
|
|
std::ifstream bufFile;
|
|
|
|
|
|
|
|
|
|
Pin::Pin()
|
|
|
|
|
{
|
|
|
|
|
char buffer[50];
|
|
|
|
|
uint8_t currentPin = 0;
|
|
|
|
|
int ck = 0;
|
|
|
|
|
std::ifstream bufFile;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Pin::~Pin()
|
|
|
|
@ -20,12 +25,10 @@ void Pin::setMode(mode mode)
|
|
|
|
|
{
|
|
|
|
|
case input:
|
|
|
|
|
sprintf(buffer, "echo \"in\" > /sys/class/gpio/gpio%d/direction",gpioNo);
|
|
|
|
|
pins[gpioNo].mode = mode;
|
|
|
|
|
system(buffer);
|
|
|
|
|
break;
|
|
|
|
|
case output:
|
|
|
|
|
sprintf(buffer, "echo \"out\" > /sys/class/gpio/gpio%d/direction",gpioNo);
|
|
|
|
|
pins[gpioNo].mode = mode;
|
|
|
|
|
system(buffer);
|
|
|
|
|
break;
|
|
|
|
|
case analog:
|
|
|
|
@ -35,7 +38,6 @@ void Pin::setMode(mode mode)
|
|
|
|
|
std::cout << "No analog pins are awailable for raspberry" << std::endl;
|
|
|
|
|
break;
|
|
|
|
|
default :
|
|
|
|
|
throwError(__LINE__,notValidMode);
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
@ -91,11 +93,11 @@ void Pin::write(bool state)
|
|
|
|
|
{
|
|
|
|
|
if(state == 1)
|
|
|
|
|
{
|
|
|
|
|
sprintf(buffer, "echo \"%d\" > /sys/class/gpio/gpio%d/value",value,gpioNo);
|
|
|
|
|
sprintf(buffer, "echo \"%d\" > /sys/class/gpio/gpio%d/value",state,gpioNo);
|
|
|
|
|
system(buffer);
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
sprintf(buffer, "echo \"%d\" > /sys/class/gpio/gpio%d/value",value,gpioNo);
|
|
|
|
|
sprintf(buffer, "echo \"%d\" > /sys/class/gpio/gpio%d/value",state,gpioNo);
|
|
|
|
|
system(buffer);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -124,10 +126,6 @@ void Pin::deInit()
|
|
|
|
|
sprintf(buffer, "echo \"%d\" > /sys/class/gpio/unexport",gpioNo);
|
|
|
|
|
system(buffer);
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
throwError(__LINE__,pinNotDeclared);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|