Πίνακας περιεχομένων:
2025 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2025-01-23 14:39
Όταν συνδέετε έναν μικροελεγκτή σε έναν αισθητήρα, οθόνη ή άλλη μονάδα, σκέφτεστε ποτέ πώς οι δύο συσκευές μιλούν μεταξύ τους; Τι ακριβώς λένε; Πώς μπορούν να καταλάβουν ο ένας τον άλλον;
Η επικοινωνία μεταξύ ηλεκτρονικών συσκευών είναι σαν επικοινωνία μεταξύ ανθρώπων. Και οι δύο πλευρές πρέπει να μιλούν την ίδια γλώσσα. Στα ηλεκτρονικά, αυτές οι γλώσσες ονομάζονται πρωτόκολλα επικοινωνίας. Ευτυχώς για εμάς, υπάρχουν μόνο μερικά πρωτόκολλα επικοινωνίας που πρέπει να γνωρίζουμε κατά την κατασκευή των περισσότερων ηλεκτρονικών έργων DIY. Σε αυτήν τη σειρά άρθρων, θα συζητήσουμε τα βασικά των τριών πιο συνηθισμένων πρωτοκόλλων: Serial Peripheral Interface (SPI), Inter-Integrated Circuit (I2C) και Universal Asynchronous Receiver/Transmitter (UART) επικοινωνία. Αρχικά, θα ξεκινήσουμε με κάποιες βασικές έννοιες για την ηλεκτρονική επικοινωνία και στη συνέχεια θα εξηγήσουμε λεπτομερώς πώς λειτουργεί το SPI. Στο επόμενο άρθρο, θα συζητήσουμε την επικοινωνία που βασίζεται στην UART και στο τρίτο άρθρο, θα βουτήξουμε στο I2C. Τα SPI, I2C και UART είναι αρκετά πιο αργά από πρωτόκολλα όπως USB, ethernet, Bluetooth και WiFi, αλλά είναι πολύ πιο απλά και χρησιμοποιούν λιγότερους πόρους υλικού και συστήματος. Τα SPI, I2C και UART είναι ιδανικά για επικοινωνία μεταξύ μικροελεγκτών και μεταξύ μικροελεγκτών και αισθητήρων, όπου δεν απαιτείται μεταφορά μεγάλων ποσοτήτων δεδομένων υψηλής ταχύτητας.
Βήμα 1: ΣΕΙΡΑ VS. ΠΑΡΑΛΛΗΛΗ ΕΠΙΚΟΙΝΩΝΙΑ
Οι ηλεκτρονικές συσκευές μιλούν μεταξύ τους στέλνοντας κομμάτια δεδομένων μέσω καλωδίων που συνδέονται φυσικά μεταξύ των συσκευών. Το bit μοιάζει με ένα γράμμα σε μια λέξη, εκτός από τα 26 γράμματα (στο αγγλικό αλφάβητο), ένα bit είναι δυαδικό και μπορεί να είναι μόνο 1 ή 0. Τα bit μεταφέρονται από τη μία συσκευή στην άλλη με γρήγορες αλλαγές τάσης. Σε ένα σύστημα που λειτουργεί στα 5 V, ένα 0 bit επικοινωνείται ως ένας σύντομος παλμός 0 V και ένα 1 bit επικοινωνείται με έναν σύντομο παλμό 5 V.
Τα δυαδικά ψηφία δεδομένων μπορούν να μεταδοθούν είτε σε παράλληλη είτε σε σειριακή μορφή. Σε παράλληλη επικοινωνία, τα κομμάτια δεδομένων αποστέλλονται όλα ταυτόχρονα, το καθένα μέσω ξεχωριστού καλωδίου. Το παρακάτω διάγραμμα δείχνει την παράλληλη μετάδοση του γράμματος "C" σε δυαδική μορφή (01000011):
Βήμα 2:
Στη σειριακή επικοινωνία, τα δυαδικά ψηφία αποστέλλονται ένα προς ένα μέσω ενός μόνο σύρματος. Το παρακάτω διάγραμμα δείχνει τη σειριακή μετάδοση του γράμματος "C" σε δυαδική μορφή (01000011):
Βήμα 3:
Βήμα 4: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΚΟΙΝΩΝΙΑ SPI
Το SPI είναι ένα κοινό πρωτόκολλο επικοινωνίας που χρησιμοποιείται από πολλές διαφορετικές συσκευές. Για παράδειγμα, μονάδες κάρτας SD, μονάδες ανάγνωσης καρτών RFID και ασύρματος πομπός/δέκτες 2,4 GHz χρησιμοποιούν όλα SPI για επικοινωνία με μικροελεγκτές.
Ένα μοναδικό όφελος του SPI είναι το γεγονός ότι τα δεδομένα μπορούν να μεταφερθούν χωρίς διακοπή. Οποιοσδήποτε αριθμός δυαδικών ψηφίων μπορεί να αποσταλεί ή να ληφθεί σε συνεχή ροή. Με το I2C και το UART, τα δεδομένα αποστέλλονται σε πακέτα, περιορισμένα σε έναν συγκεκριμένο αριθμό bit. Οι συνθήκες έναρξης και διακοπής καθορίζουν την αρχή και το τέλος κάθε πακέτου, οπότε τα δεδομένα διακόπτονται κατά τη μετάδοση. Οι συσκευές που επικοινωνούν μέσω SPI βρίσκονται σε μια σχέση master-slave. Ο κύριος είναι η συσκευή ελέγχου (συνήθως ένας μικροελεγκτής), ενώ ο υποτελής (συνήθως ένας αισθητήρας, μια οθόνη ή ένα τσιπ μνήμης) λαμβάνει οδηγίες από τον κύριο. Η απλούστερη διαμόρφωση του SPI είναι ένα ενιαίο κύριο, ενιαίο σύστημα σκλάβων, αλλά ένας κύριος μπορεί να ελέγξει περισσότερους από έναν σκλάβους (περισσότερα για αυτό παρακάτω).
Βήμα 5:
Βήμα 6:
MOSI (Master Output/Slave Input) - Γραμμή για την αποστολή δεδομένων στον κύριο κύριο από τον κύριο.
MISO (Master Input/Slave Output) - Γραμμή για την αποστολή δεδομένων στον κύριο από τον υποτελή.
SCLK (Ρολόι) - Γραμμή για το σήμα του ρολογιού.
SS/CS (Slave Select/Chip Select) - Γραμμή για τον κύριο κύριο να επιλέξει σε ποιον σκλάβο θα στείλει δεδομένα
Βήμα 7:
*Στην πράξη, ο αριθμός των υποτελών περιορίζεται από τη χωρητικότητα φορτίου του συστήματος, γεγονός που μειώνει την ικανότητα του πλοιάρχου να αλλάζει με ακρίβεια μεταξύ των επιπέδων τάσης.
Βήμα 8: ΠΩΣ ΛΕΙΤΟΥΡΓΕΙ ΤΟ SPI
ΤΟ ΡΟΛΟΪ
Το σήμα ρολογιού συγχρονίζει την έξοδο των δυαδικών ψηφίων από το κύριο στη δειγματοληψία των δυαδικών ψηφίων από τον υποτελή. Ένα κομμάτι δεδομένων μεταφέρεται σε κάθε κύκλο ρολογιού, οπότε η ταχύτητα μεταφοράς δεδομένων καθορίζεται από τη συχνότητα του σήματος ρολογιού. Η επικοινωνία SPI ξεκινά πάντα από τον κύριο, αφού ο κύριος διαμορφώνει και παράγει το σήμα του ρολογιού.
Κάθε πρωτόκολλο επικοινωνίας όπου οι συσκευές μοιράζονται ένα σήμα ρολογιού είναι γνωστό ως σύγχρονο. Το SPI είναι ένα σύγχρονο πρωτόκολλο επικοινωνίας. Υπάρχουν επίσης ασύγχρονες μέθοδοι που δεν χρησιμοποιούν σήμα ρολογιού. Για παράδειγμα, στην επικοινωνία UART, και οι δύο πλευρές ρυθμίζονται σε ένα προκαθορισμένο ρυθμό baud που υπαγορεύει την ταχύτητα και το χρόνο μετάδοσης δεδομένων.
Το σήμα ρολογιού στο SPI μπορεί να τροποποιηθεί χρησιμοποιώντας τις ιδιότητες της πολικότητας του ρολογιού και της φάσης του ρολογιού. Αυτές οι δύο ιδιότητες συνεργάζονται για να καθορίσουν πότε τα bit εξέρχονται και πότε γίνονται δειγματοληψία. Η πολικότητα του ρολογιού μπορεί να ρυθμιστεί από τον κύριο για να επιτρέψει την έξοδο των δυαδικών ψηφίων και τη δειγματοληψία είτε στην άνοδο είτε την πτώση του άκρου του κύκλου του ρολογιού. Η φάση του ρολογιού μπορεί να ρυθμιστεί ώστε η έξοδος και η δειγματοληψία να πραγματοποιηθούν είτε στην πρώτη άκρη είτε στη δεύτερη άκρη του κύκλου ρολογιού, ανεξάρτητα από το αν ανεβαίνει ή πέφτει.
SLAVE SELECT
Ο κύριος μπορεί να επιλέξει σε ποιον σκλάβο θέλει να μιλήσει ρυθμίζοντας τη γραμμή CS/SS του υποτελούς σε επίπεδο χαμηλής τάσης. Στην κατάσταση αδράνειας, μη μετάδοσης, η γραμμή επιλογής slave διατηρείται σε επίπεδο υψηλής τάσης. Πολλές καρφίτσες CS/SS μπορεί να είναι διαθέσιμες στο master, το οποίο επιτρέπει την παράλληλη σύνδεση πολλών υποτελών. Εάν υπάρχει μόνο ένας ακροδέκτης CS/SS, μπορούν να συνδεθούν πολλαπλά σκλάβοι στον κύριο με αλυσίδα μαργαρίτας.
ΠΟΛΛΑΠΛΟΥΣ ΔΟΥΛΟΥΣ SPI
μπορεί να ρυθμιστεί για να λειτουργεί με έναν μόνο κύριο και έναν σκλάβο και μπορεί να ρυθμιστεί με πολλούς σκλάβους που ελέγχονται από έναν κύριο. Υπάρχουν δύο τρόποι σύνδεσης πολλών σκλάβων στον κύριο. Εάν ο κύριος έχει πολλαπλές καρφίτσες επιλογής slave, οι υποτελείς μπορούν να συνδεθούν παράλληλα ως εξής:
Βήμα 9:
Βήμα 10:
ΜΟΣΙ ΚΑΙ ΜΙΣΟ
Ο κύριος αποστέλλει δεδομένα στον υπάλληλο bit -bit, σειριακά μέσω της γραμμής MOSI. Ο υποτελής λαμβάνει τα δεδομένα που αποστέλλονται από τον κύριο στην ακίδα MOSI. Τα δεδομένα που αποστέλλονται από τον κύριο στο σκλάβο συνήθως αποστέλλονται πρώτα με το πιο σημαντικό bit. Ο σκλάβος μπορεί επίσης να στείλει δεδομένα στον κύριο μέσω της γραμμής MISO σε σειριακή σειρά. Τα δεδομένα που αποστέλλονται από τον υπάλληλο πίσω στον κύριο αποστέλλονται συνήθως με το λιγότερο σημαντικό bit πρώτα. ΒΗΜΑΤΑ ΜΕΤΑΦΟΡΑΣ ΔΕΔΟΜΕΝΩΝ SPI 1. Ο κύριος εκπέμπει το σήμα του ρολογιού:
Βήμα 11:
Εάν διατίθεται μόνο ένας καρφίτσα επιλογής σκλάβου, οι σκλάβοι μπορούν να είναι αλυσοδεμένοι έτσι:
Βήμα 12:
ΜΟΣΙ ΚΑΙ ΜΙΣΟ
Ο κύριος αποστέλλει δεδομένα στον υπάλληλο bit -bit, σειριακά μέσω της γραμμής MOSI. Ο υποτελής λαμβάνει τα δεδομένα που αποστέλλονται από τον κύριο στην ακίδα MOSI. Τα δεδομένα που αποστέλλονται από τον κύριο στο σκλάβο συνήθως αποστέλλονται πρώτα με το πιο σημαντικό bit.
Ο σκλάβος μπορεί επίσης να στείλει δεδομένα στον κύριο μέσω της γραμμής MISO σε σειριακή σειρά. Τα δεδομένα που αποστέλλονται από τον υπάλληλο πίσω στον κύριο αποστέλλονται συνήθως με το λιγότερο σημαντικό bit πρώτα.
ΒΗΜΑΤΑ ΜΕΤΑΦΟΡΑΣ ΔΕΔΟΜΕΝΩΝ SPI
*Σημείωση Οι εικόνες είναι εισηγμένες στο Oboe που μπορείτε εύκολα να διακρίνετε
1. Ο κύριος παράγει το σήμα του ρολογιού:
2. Ο κύριος μεταβαίνει τον πείρο SS/CS σε κατάσταση χαμηλής τάσης, η οποία ενεργοποιεί την υποτελή:
3. Ο κύριος αποστέλλει τα δεδομένα ένα bit κάθε φορά στο slave κατά μήκος της γραμμής MOSI. Ο σκλάβος διαβάζει τα κομμάτια κατά την παραλαβή τους:
4. Εάν απαιτείται απάντηση, ο υποτελής επιστρέφει δεδομένα ένα bit κάθε φορά στον κύριο κατά μήκος της γραμμής MISO. Ο κύριος διαβάζει τα κομμάτια κατά την παραλαβή τους:
Βήμα 13: Πλεονεκτήματα και μειονεκτήματα του SPI
Υπάρχουν ορισμένα πλεονεκτήματα και μειονεκτήματα στη χρήση του SPI, και εάν έχετε την επιλογή μεταξύ διαφορετικών πρωτοκόλλων επικοινωνίας, θα πρέπει να γνωρίζετε πότε θα χρησιμοποιήσετε το SPI σύμφωνα με τις απαιτήσεις του έργου σας:
ΠΛΕΟΝΕΚΤΗΜΑΤΑ
Δεν υπάρχουν δυαδικά ψηφία έναρξης και διακοπής, έτσι ώστε τα δεδομένα να μπορούν να μεταδίδονται συνεχώς χωρίς διακοπή. χρόνος
ΜΕΙΟΝΕΚΤΗΜΑΤΑ
Χρησιμοποιεί τέσσερα καλώδια (το I2C και το UART χρησιμοποιούν δύο) Δεν υπάρχει επιβεβαίωση ότι τα δεδομένα έχουν ληφθεί με επιτυχία (το I2C το έχει αυτό) Δεν υπάρχει κανένας τύπος ελέγχου σφάλματος όπως το bit ισοτιμίας στο UART Επιτρέπει μόνο έναν κύριο ελπίζουμε ότι αυτό το άρθρο σας έδωσε καλύτερη κατανόηση του SPI. Συνεχίστε στο δεύτερο μέρος αυτής της σειράς για να μάθετε για την επικοινωνία που βασίζεται στο UART ή στο τρίτο μέρος όπου συζητάμε το πρωτόκολλο I2C.
Εάν έχετε οποιεσδήποτε ερωτήσεις, μη διστάσετε να το ρωτήσετε στην ενότητα σχολίων, είμαστε εδώ για να σας βοηθήσουμε. Και φροντίστε να ακολουθήσετε
Με εκτίμηση: M. Junaid
Συνιστάται:
Αποκωδικοποιητής πρωτοκόλλου τηλεχειριστηρίου RC5 χωρίς βιβλιοθήκη: 4 βήματα
Αποκωδικοποιητής Πρωτοκόλλου Τηλεχειριστηρίου RC5 Χωρίς Βιβλιοθήκη: Πριν από την αποκωδικοποίηση του rc5 συζητάμε πρώτα τι είναι η εντολή rc5 και ποια είναι η δομή της. βασικά, η εντολή rc5 χρησιμοποιείται σε τηλεχειριστήρια που χρησιμοποιούνται σε τηλεοράσεις, συσκευές αναπαραγωγής cd, d2h, συστήματα οικιακού κινηματογράφου κλπ. έχει 13 ή 14 bits διατεταγμένα σε ένα
Παρακάμπτοντας τις απαγορεύσεις επικοινωνίας του Xbox One: 6 βήματα
Παρακάμπτοντας τις απαγορεύσεις επικοινωνίας του Xbox One: Έχετε αναφερθεί ποτέ από άτομα που παίζατε εναντίον σας ότι χρησιμοποιούσατε ακατάλληλη γλώσσα στο xbox στο παρελθόν και στη συνέχεια δεν μπορούσατε να μιλήσετε με τους φίλους σας κάθε φορά που συνέβαιναν, παρόλο που δεν ήσασταν εσείς που λέγατε ορισμένα πράγματα. Λοιπόν, υπάρχει τρόπος τώρα και όλοι εσείς
Βασικά στοιχεία IoT: Σύνδεση του IoT σας στο Cloud χρησιμοποιώντας το Mongoose OS: 5 βήματα
Βασικά στοιχεία του IoT: Σύνδεση του IoT σας με το cloud χρησιμοποιώντας το λειτουργικό σύστημα Mongoose: Εάν είστε άτομο που ασχολείται με το tinkering και τα ηλεκτρονικά, τις περισσότερες φορές, θα συναντήσετε τον όρο Internet of Things, συνήθως συντομευμένο ως IoT, και ότι αναφέρεται σε ένα σύνολο συσκευών που μπορούν να συνδεθούν στο διαδίκτυο! Το να είσαι τέτοιος άνθρωπος
Κατανόηση του πρωτοκόλλου IR των τηλεχειριστηρίων του κλιματιστικού: 9 βήματα (με εικόνες)
Κατανόηση του πρωτοκόλλου IR των τηλεχειριστηρίων του Air Conditoner: Μαθαίνω για πρωτόκολλα IR εδώ και αρκετό καιρό τώρα. Πώς να στείλετε και να λάβετε σήματα IR. Σε αυτό το σημείο, το μόνο που απομένει είναι το πρωτόκολλο IR των τηλεχειριστηρίων AC. Σε αντίθεση με τα παραδοσιακά τηλεχειριστήρια σχεδόν όλων των ηλεκτρονικών συσκευών (ας πούμε μια τηλεόραση) όπου
ΒΑΣΙΚΑ ΤΗΣ ΕΠΙΚΟΙΝΩΝΙΑΣ UART: 16 Βήματα
ΒΑΣΙΚΑ ΤΗΣ ΕΠΙΚΟΙΝΩΝΙΑΣ UART: Θυμηθείτε όταν οι εκτυπωτές, τα ποντίκια και τα μόντεμ είχαν παχιά καλώδια με εκείνους τους τεράστιους ακατάλληλους συνδετήρες; Αυτά που έπρεπε κυριολεκτικά να βιδωθούν στον υπολογιστή σας; Αυτές οι συσκευές πιθανότατα χρησιμοποιούσαν UART για να επικοινωνούν με τον υπολογιστή σας. Ενώ το USB έχει almos