+ FastShiftIn version 0.1.3

+ optimized masking
This commit is contained in:
RobTillaart 2017-04-27 00:43:41 +02:00
parent 2f5952ec05
commit e695543ca6
4 changed files with 9 additions and 9 deletions

View File

@ -1,7 +1,7 @@
//
// FILE: FastShiftIn.cpp
// AUTHOR: Rob Tillaart
// VERSION: 0.1.02
// VERSION: 0.1.3
// PURPOSE: shiftin
// DATE: 2013-09-29
// URL:
@ -37,7 +37,7 @@ int FastShiftIn::read()
{
_value = 0;
for (uint8_t i = 0; i < 8; i++)
for (uint8_t i = 0, m = 1, n = 128; i < 8; i++, m <<=1, n >>= 1)
{
uint8_t oldSREG = SREG;
cli();
@ -46,9 +46,9 @@ int FastShiftIn::read()
if ((*_datain & _databit) > 0)
{
if (_bitorder == LSBFIRST)
_value |= (1 << i);
_value |= m;
else
_value |= (1 << (7 - i));
_value |= n;
}
*_clockin &= ~_clockbit;
SREG = oldSREG;

View File

@ -1,7 +1,7 @@
//
// FILE: FastShiftIn.h
// AUTHOR: Rob Tillaart
// VERSION: 0.1.01
// VERSION: 0.1.3
// PURPOSE: shiftin
// DATE: 2013-09-29
// URL:
@ -18,7 +18,7 @@
#include "WProgram.h"
#endif
#define FASTSHIFTIN_LIB_VERSION "0.1.01"
#define FASTSHIFTIN_LIB_VERSION "0.1.3"
#define FASTSHIFTIN_NOVALUE -1

View File

@ -1,7 +1,7 @@
{
"name": "FastShiftIn",
"keywords": "Shift in serial ",
"description": "Class for up to 2x faster shift in.",
"description": "Class for up to 3x faster shift in.",
"authors":
[
{

View File

@ -1,8 +1,8 @@
name=FastShiftIn
version=0.1.01
version=0.1.3
author=Rob Tillaart <rob.tillaart@gmail.com>
maintainer=Rob Tillaart <rob.tillaart@gmail.com>
sentence=Class for up to 2x faster shift in.
sentence=Class for up to 3x faster shift in.
paragraph=
category=Signal Input/Output
url=https://github.com/RobTillaart/Arduino/Libraries/