Files
flippr-code/FlippR-Driver/src/utility/GPIOInterface.cpp
2018-11-09 01:16:35 +01:00

47 lines
820 B
C++

/*
* GPIOInterface.cpp
*
* Created on: Jun 15, 2018
* Author: Andreas Schneider, Johannes Wendel, Jonas Zeunert, Rafael Vinci, Dr. Franca Rupprecht
*/
#include "GPIOInterface.h"
#include "config.h"
#include "wiringPi/wiringPi.h"
#include "json/json.hpp"
namespace flippR_driver
{
namespace utility
{
std::once_flag GPIOInterface::GPIO_LIB_INITIALIZED;
void GPIOInterface::initialize_input_pin(char address)
{
pinMode(address, INPUT);
}
void GPIOInterface::write_pin(char address, char data)
{
digitalWrite(address, data);
}
bool GPIOInterface::read_pin(char address)
{
return PULLDOWN == digitalRead(address);
}
void GPIOInterface::initialize_output_pin(char address)
{
pinMode(address, OUTPUT);
}
GPIOInterface::GPIOInterface()
{
std::call_once(GPIO_LIB_INITIALIZED, wiringPiSetup);
}
}
}