Leírás
Bitenként eltol egy bájt adatot. A legnagyobb (azaz a bal szélső) vagy a legkisebb (jobbszélső) helyiértékű bittől indul. Minden bitnél az órakivezetést magasra húzzuk, a következő bitet kiolvassuk az adatsorból, majd az órakivezetést alacsonyra vesszük.
Ha olyan eszközzel csatlakozik, amelynek az órajele emelkedő élekkel működik, akkor a shiftIn()
első hívása előtt meg kell győződnie arról, hogy az órakivezetés alacsonyan van, pl. a digitalWrite(clockPin, LOW)
hívásával.
Megjegyzés: ez egy szoftveres megvalósítás; Az Arduino egy SPI-könyvtárat is biztosít, amely a hardveres implementációt használja, amely gyorsabb, de csak meghatározott kivezetéseken működik.
Szintaxis
byte incoming = shiftIn(dataPin, clockPin, bitOrder)
Paraméterek
dataPin
: a kivezetés, amelyről az egyes biteket be kell vinni. Engedélyezett adattípusok: int
.
clockPin
: kivezetés az dataPin-ről történő olvasás jelzéséhez.
bitOrder
: milyen sorrendben kell eltolni a biteket; vagy MSBFIRST vagy LSBFIRST. (A legnagyobb helyiértékű bit először, vagy a legkisebb helyiértékű bit először).
Visszatérési érték
A beolvasott érték. Adattípus: byte
.