arduino εντολή shiftIn()

Μετακίνηση bit μέσα σε ένα byte

Περιγραφή

Μετακινεί σε ένα byte δεδομένων (π.χ. έναν χαρακτήρα) ένα bit κάθε φορά. Ξεκινάει από την αριστερή ή δεξιά θέση. Για κάθε bit, το pin του ρολογιού τίθεται σε HIGH state, το επόμενο bit διαβάζεται από την γραμμή δεδομένων και στη συνέχεια το pin του ρολογιού τίθεται και πάλι σε LOW state.

Πρέπει να βεβαιωθείτε ότι το pin του ρολογιού (clock pin) θα είναι αρχικά LOW και αυτό μπορείτε να το πετύχετε αν χρησιμοποιήσετε την εντολή digitalWrite(clockPin, LOW)

Σημείωση: η εντολή shiftIn() είναι μία εφαρμογή σε επίπεδο λογισμικού. Η πλακέτα arduino διαθέτει την βιβλιοθήκη SPI η οποία χρησιμοποιεί την ενσωμάτωση ολίσθησης/ μετακίνησης των bit βασιζόμενη στο υλικό όπου είναι γρηγορότερο. Ο περιορισμός είναι ότι λειτουργεί σε συγκεκριμένα pin.

Σύνταξη




byte incoming = shiftIn(dataPin, clockPin, bitOrder)

dataPin: Το pin από το οποίο θα διαβάσει το κάθε bit. Η είσοδος θα θεωρηθεί ως ένας χαρακτήρας byte σε μορφή ακέραιου αριθμού)

clockPin: Το pin ρολογιού το οποίο θα του αλλάζουμε την κατάσταση έτσι ώστε να προχωρήσει στην επόμενη ανάγνωση

bitOrder: Η σειρά με την οποία θα μετακινήσει / ολισθήσει τα bits; θα είναι MSBFIRST(το πιο σημαντικό bit) ή LSBFIRST(τελευταίο πιο σημαντικό bit).

Η συνάρτηση επιστρέφει την τιμή σε μορφή byte και τις περισσότερες αν όχι όλες τις φορές, εκχωρούμε το αποτέλεσμα σε κάποια μεταβλητή.

Η εντολή shiftIn() χρησιμοποιείται συνδυαστικά ως μέρος μίας γενικότερης εφαρμογής. Στην επίσημη σελίδα arduino, υπάρχουν 3 παραδείγματα τα οποία μπορείτε να χρησιμοποιήσετε ως σημείο αναφοράς για την πρακτική σας εξάσκηση.
Επιστροφή στη λίστα εντολών

Δεκέμβριος 24, 2018

0 Απαντήσεις στο "arduino εντολή shiftIn()"

    Αφήστε ένα μήνυμα

    Η ηλ. διεύθυνση σας δεν δημοσιεύεται. Τα υποχρεωτικά πεδία σημειώνονται με *

    Σχεδιασμός © GetCert. Με επιφύλαξη παντός δικαιώματος.