
Σε αυτό το άρθρο
Το Raspberry Pi μπορεί να είναι πολλά πράγματα. Αυτό είναι μέρος της έκκλησής του. Μπορείτε να χρησιμοποιήσετε το Pi σαν έναν κανονικό υπολογιστή, συνδέοντας περιφερειακές συσκευές μέσω των θυρών USB και HDMI της πλακέτας. Εάν θέλετε να εμβαθύνετε στις τεχνικές πτυχές του Pi, στρέψτε την προσοχή σας στο σετ ακίδων κατά μήκος της πλευράς της πλακέτας κυκλώματος. Αυτές οι καρφίτσες κρατούν το κλειδί για τη χρήση του Raspberry Pi στο IoT, τη ρομποτική και άλλα έργα. Οι καρφίτσες δεν είναι τόσο εκφοβιστικές όσο νομίζετε, μόλις αναλυθούν και εξηγηθούν.
Εισαγωγή στις καρφίτσες του Raspberry Pi
Ο όρος GPIO (General Purpose Input Output) δεν είναι αποκλειστικός για το Raspberry Pi. Οι ακίδες εισόδου και εξόδου μπορούν να βρεθούν στους περισσότερους μικροελεγκτές, όπως το Arduino, το Beaglebone και άλλα. Το GPIO με το Raspberry Pi είναι το μακρύ μπλοκ ακίδων στην επάνω αριστερή γωνία του ταμπλό. Τα παλαιότερα μοντέλα είχαν 26 ακίδες και τα τρέχοντα μοντέλα έχουν 40 ακίδες. Μπορείτε να συνδέσετε εξαρτήματα και άλλες συσκευές υλικού σε αυτές τις καρφίτσες και να χρησιμοποιήσετε κώδικα για να ελέγξετε τι κάνουν τα στοιχεία. Είναι ένα σημαντικό μέρος του Raspberry Pi και ένας εξαιρετικός τρόπος για να μάθετε για τα ηλεκτρονικά. Μετά από μερικά έργα λογισμικού, πιθανότατα θα βρεθείτε να πειραματιστείτε με αυτές τις καρφίτσες, ανυπομονώντας να συνδυάσετε τον κωδικό σας με υλικό για να κάνετε τα πράγματα να συμβούν στην πραγματική ζωή. Αυτή η διαδικασία μπορεί να είναι εκφοβιστική εάν είστε νέοι στο Pi. Λαμβάνοντας υπόψη ότι μια λανθασμένη κίνηση μπορεί να βλάψει το Raspberry Pi, είναι κατανοητό ότι είναι μια νευρική περιοχή για να αρχίσουν να εξερευνούν οι αρχάριοι. Αυτό το άρθρο εξηγεί τι κάνει κάθε τύπος πείρου GPIO και τους περιορισμούς του.
Το GPIO
Αρχικά, ας ρίξουμε μια ματιά στο GPIO στο σύνολό του. Οι ακίδες μπορεί να φαίνονται ίδιες, αλλά όλες έχουν διαφορετικές λειτουργίες. Η παρακάτω εικόνα δείχνει αυτές τις λειτουργίες σε διαφορετικά χρώματα.
Κάθε καρφίτσα αριθμείται από 1 έως 40, ξεκινώντας από την κάτω αριστερή γωνία. Αυτοί είναι οι φυσικοί αριθμοί pin. Ωστόσο, υπάρχουν επίσης συμβάσεις αρίθμησης και επισήμανσης όπως η BCM, οι οποίες χρησιμοποιούνται κατά τη σύνταξη κώδικα.
Ισχύς και γείωση
Επισημαίνονται με κόκκινο χρώμα είναι οι πείροι τροφοδοσίας με ετικέτα 3 ή 5 για 3.3V ή 5V. Αυτές οι ακίδες σας επιτρέπουν να στέλνετε ρεύμα σε μια συσκευή χωρίς την ανάγκη κωδικού. Δεν υπάρχει κανένας τρόπος να τα απενεργοποιήσετε.
Υπάρχουν δύο ράγες ισχύος: 3,3 βολτ και 5 βολτ. Η ράγα 3.3V περιορίζεται στην τρέχουσα κλήρωση 50mA. Αντίθετα, η ράγα 5V παρέχει όποια τρέχουσα χωρητικότητα έχει απομείνει από την παροχή ρεύματος αφού το Pi έχει πάρει αυτό που χρειάζεται. Επισημασμένο σε καφέ είναι οι ακίδες γείωσης (GND). Αυτές οι καρφίτσες γείωσης αποτελούν ζωτικό μέρος οποιουδήποτε έργου ηλεκτρονικών. Οι ακίδες 5V GPIO είναι φυσικοί αριθμοί 2 και 4. Οι καρφίτσες GPIO 3.3V είναι φυσικοί αριθμοί 1 και 17. Οι ακίδες GPIO γείωσης είναι φυσικοί αριθμοί 6, 9, 14, 20, 25, 30, 34 και 39.
Καρφίτσες εισόδου / εξόδου
Οι πράσινες ακίδες είναι γενικές καρφίτσες εισόδου / εξόδου. Αυτά μπορούν εύκολα να χρησιμοποιηθούν ως είσοδοι ή έξοδοι χωρίς σύγκρουση με άλλες λειτουργίες όπως I2C, SPI ή UART. Αυτές οι ακίδες μπορούν να στείλουν ισχύ σε LED, βομβητή ή άλλα εξαρτήματα ή μπορούν να χρησιμοποιηθούν ως είσοδος για την ανάγνωση αισθητήρων, διακοπτών ή άλλων συσκευών εισόδου.
Η ισχύς εξόδου αυτών των ακίδων είναι 3.3V. Κάθε πείρος δεν πρέπει να υπερβαίνει τα 16mA ρεύματος, είτε βυθίζεται είτε προέρχεται. Το σύνολο των ακίδων GPIO δεν πρέπει να υπερβαίνει τα 50mA ταυτόχρονα. Αυτό μπορεί να είναι περιοριστικό, οπότε ίσως χρειαστεί να γίνετε δημιουργικοί σε ορισμένα έργα. Οι γενικές ακίδες GPIO είναι φυσικοί αριθμοί 7, 11, 12, 13, 15, 16, 18, 22, 29, 31, 32, 33, 35, 36, 37, 38 και 40.
Καρφίτσες I2C
Οι ακίδες I2C είναι κίτρινες. Το I2C είναι ένα πρωτόκολλο επικοινωνίας που επιτρέπει στις συσκευές να επικοινωνούν με το Raspberry Pi. Αυτές οι ακίδες μπορούν επίσης να χρησιμοποιηθούν ως γενικές καρφίτσες GPIO.
Ένα καλό παράδειγμα χρήσης του I2C είναι το δημοφιλές τσιπ επέκτασης θύρας MCP23017, το οποίο μπορεί να σας δώσει περισσότερες καρφίτσες εισόδου / εξόδου μέσω αυτού του πρωτοκόλλου I2C. Οι καρφίτσες I2C GPIO είναι φυσικοί αριθμοί ακίδων 3 και 5.
Καρφίτσες UART (σειριακές)
Οι ακίδες UART είναι γκρι. Αυτές οι ακίδες είναι ένα άλλο πρωτόκολλο επικοινωνίας που προσφέρει σειριακές συνδέσεις και μπορούν να χρησιμοποιηθούν ως γενικές είσοδοι / έξοδοι GPIO.
Μία χρήση για το UART είναι να ενεργοποιήσετε μια σειριακή σύνδεση από ένα Pi σε φορητό υπολογιστή μέσω USB. Αυτό μπορεί να επιτευχθεί χρησιμοποιώντας πρόσθετες πλακέτες ή απλά καλώδια. Καταργεί την ανάγκη σύνδεσης οθόνης ή διαδικτύου για πρόσβαση στο Pi σας. Οι ακίδες UART GPIO είναι φυσικοί αριθμοί ακίδων 8 και 10.
Καρφίτσες SPI
Οι ακίδες SPI είναι σε ροζ χρώμα. Το SPI είναι ένας δίαυλος διασύνδεσης που στέλνει δεδομένα μεταξύ του Pi και άλλου υλικού και περιφερειακών. Χρησιμοποιείται συνήθως για αλυσίδες συσκευών όπως μια μήτρα LED ή οθόνη.
Όπως και άλλοι, αυτοί οι ακροδέκτες μπορούν επίσης να χρησιμοποιηθούν ως γενικές είσοδοι / έξοδοι GPIO. Οι ακίδες SPI GPIO είναι φυσικοί αριθμοί ακίδων 19, 21, 23, 24 και 26.
Καρφίτσες DNC
Τελευταία είναι δύο καρφίτσες με μπλε χρώμα που φέρουν σήμανση ως DNC, που σημαίνει Do Not Connect. Αυτό μπορεί να αλλάξει στο μέλλον εάν το Ίδρυμα Raspberry Pi αλλάξει τους πίνακες ή το λογισμικό.
Οι ακίδες DNC GPIO είναι φυσικοί αριθμοί ακίδων 27 και 28.
Συμβάσεις αρίθμησης GPIO
Όταν κωδικοποιείτε με το GPIO, έχετε την επιλογή να εισαγάγετε τη βιβλιοθήκη GPIO με έναν από τους δύο τρόπους: BCM ή BOARD. Η πρώτη επιλογή είναι GPIO BCM. Αυτή είναι η σύμβαση αρίθμησης Broadcom. Χρησιμοποιείται συνήθως σε έργα και πρόσθετα υλικού. Η δεύτερη επιλογή είναι ΣΥΜΒΟΥΛΙΟ GPIO. Αυτή η μέθοδος χρησιμοποιεί τους φυσικούς αριθμούς ακίδων, οι οποίοι είναι βολικοί κατά την καταμέτρηση των καρφιτσών. Θα βρείτε ότι χρησιμοποιείται λιγότερο σε παραδείγματα έργων.
Η λειτουργία GPIO ρυθμίζεται κατά την εισαγωγή της βιβλιοθήκης GPIO: εισαγωγή RPi.GPIO ως GPIO
Για εισαγωγή ως BCM: GPIO.setmode (GPIO.BCM)
Για εισαγωγή ως ΣΑΝΙΔΑ: GPIO.setmode (GPIO.BOARD)
Και οι δύο αυτές μέθοδοι κάνουν την ίδια δουλειά. Είναι θέμα προτίμησης αρίθμησης. Μπορείτε να χρησιμοποιήσετε πίνακες ετικετών GPIO όπως το RasPiO Portsplus (που απεικονίζεται) για να ελέγξετε σε ποιες καρφίτσες συνδέετε καλώδια. Η μία πλευρά δείχνει τη σύμβαση αρίθμησης BCM. Το άλλο δείχνει ΠΙΝΑΚΑΣ. Έτσι, καλύπτεστε για οποιοδήποτε έργο βρίσκετε.