Exemplo n.º 1
0
bool SkaarhojGPIO2x8::inputDown(uint8_t inputNumber) {	// Returns true if a input 1-8 is has just been pushed down
	if (_validInputNumber(inputNumber))	{
		_readInputStatus();

		uint16_t mask = (B1 << (inputNumber-1));
		uint16_t inputChange = (_inputStatusLastDown ^ _inputStatus) & mask;
		_inputStatusLastDown ^= inputChange;

		return (inputChange & _inputStatus) ? true : false;
	} else return false;
}
bool SkaarhojGPIO2x8::inputUp(int inputNumber) {	// Returns true if a input 1-8 is has just been released
	if (_validInputNumber(inputNumber))	{
		_readInputStatus();

		uint8_t mask = (B1 << (inputNumber-1));
		uint8_t inputChange = (_inputStatusLastUp ^ _inputStatus) & mask;
		_inputStatusLastUp ^= inputChange;

		return (inputChange & ~_inputStatus) ? true : false;
	} else return false;
}
Exemplo n.º 3
0
bool SkaarhojGPIO2x8::inputIsActive(uint8_t inputNumber) {	// Returns true if a input 1-8 is currently active
	if (_validInputNumber(inputNumber))	{
		_readInputStatus();
		return (SkaarhojGPIO2x8::inputIsActiveAll() >> (inputNumber-1)) ? true : false;
	} else return false;