- Απαιτούμενα υλικά:
- Πληροφορίες υλικού του ESP32:
- Προγραμματισμός του ESP32
- Προετοιμασία του Arduino IDE:
- Προγραμματισμός ESP32 με Arduino IDE:
Το Διαδίκτυο έχει φτάσει σχεδόν σε κάθε τσέπη μέσω έξυπνων τηλεφώνων, εκτιμάται ότι περίπου 3,2 δισεκατομμύρια άνθρωποι χρησιμοποιούν το Διαδίκτυο, αλλά εκπληκτικά περίπου 8,4 δισεκατομμύρια συσκευές χρησιμοποιούν το Διαδίκτυο. Δηλαδή οι ηλεκτρονικές συσκευές συνδέονται με το Διαδίκτυο περισσότερο από το διπλάσιο του πληθυσμού που χρησιμοποιούν το Διαδίκτυο και κάνει τα πράγματα γύρω μας πιο έξυπνα κάθε μέρα. Ο κύριος λόγος είναι η άνοδος του Διαδικτύου των πραγμάτων που είναι κοινώς γνωστό ως IOT, εκτιμάται επίσης ότι μέχρι το τέλος του 2020 θα έχουμε 20,4 δισεκατομμύρια συσκευές συνδεδεμένες στο Διαδίκτυο. Επομένως, ήρθε η ώρα να προετοιμάσουμε και να σηκώσουμε τα μανίκια μας για να εργαστούμε με έργα IOT, αν θέλουμε να συμβαδίσουμε με αυτήν την εξέλιξη, τυχεροί για εμάς οι πλατφόρμες ανοιχτού κώδικα όπως το Arduino και το Espressif Systems έχουν κάνει τα πράγματα πολύ εύκολα για εμάς.
Η Espressif Systems ξεκίνησε το ESP8266-01 πίσω, το οποίο άνοιξε πόρτες σε πολλούς χομπίστες για να μπει στον κόσμο του IOT, από τότε η κοινότητα αναπτύσσεται έντονα και πολλά προϊόντα έχουν φτάσει στην αγορά. Τώρα η κυκλοφορία του ESP32 Espressif έχει οδηγήσει τα πράγματα σε ένα νέο επίπεδο. Αυτή η μικροσκοπική φτηνή μονάδα 8 $ είναι ένας επεξεργαστής 32-bit διπλού πυρήνα με ενσωματωμένο Wi-Fi και Bluetooth διπλής λειτουργίας με επαρκή ποσότητα ακίδων 30 I / O για όλα τα βασικά ηλεκτρονικά έργα. Όλες αυτές οι λειτουργίες είναι πολύ εύχρηστες, καθώς μπορούν να προγραμματιστούν απευθείας από το Arduino IDE. Αρκετά συναρπαστικό… Ας ξεκινήσουμε λοιπόν για να ξεκινήσουμε με το ESP32.
Απαιτούμενα υλικά:
- Ενότητα ESP32
- Arduino IDE
- Καλώδιο προγραμματισμού (καλώδιο micro USB)
- Η πέτρα ψυχής από το MCU (απλά αστειεύομαι)
Πληροφορίες υλικού του ESP32:
Ας ρίξουμε μια ματιά στη μονάδα ESP32. Είναι ελαφρώς μεγαλύτερο από τη μονάδα ESP8266-01 και είναι φιλικό προς το breadboard, καθώς οι περισσότερες κεφαλίδες ακίδων έχουν σπάσει καθώς οι ακίδες I / O βλέπουν ο ένας τον άλλον, κάτι που είναι υπέροχο. Ας σπάσουμε τον πίνακα σε μικρά μέρη για να μάθουμε τον σκοπό κάθε τμήματος
Όπως μπορείτε να δείτε η καρδιά της μονάδας είναι ο ESP-WROOM-32 που είναι μικροεπεξεργαστής 32-bit. Διαθέτει επίσης μερικά κουμπιά και LED που εξηγούνται παρακάτω.
Υποδοχή Micro-USB: Η υποδοχή micro USB χρησιμοποιείται για τη σύνδεση του ESP32 στον υπολογιστή μας μέσω καλωδίου USB. Χρησιμοποιείται για τον προγραμματισμό της μονάδας ESP καθώς και για σειριακή αποσφαλμάτωση καθώς υποστηρίζει σειριακή επικοινωνία
Κουμπί EN: Το κουμπί EN είναι το κουμπί επαναφοράς της μονάδας ESP. Πατώντας αυτό το κουμπί θα επαναφέρετε τον κωδικό που εκτελείται στη μονάδα ESP
Κουμπί εκκίνησης: Αυτό το κουμπί χρησιμοποιείται για τη μεταφόρτωση του προγράμματος από το Arduino στη μονάδα ESP. Πρέπει να πατηθεί αφού κάνετε κλικ στο εικονίδιο μεταφόρτωσης στο Arduino IDE. Όταν πατήσετε το κουμπί εκκίνησης μαζί με το κουμπί EN, το ESP μπαίνει σε λειτουργία φόρτωσης υλικολογισμικού. Μην παίζετε με αυτήν τη λειτουργία, εκτός εάν γνωρίζετε τι κάνετε.
Κόκκινο LED: Το κόκκινο LED στην πλακέτα χρησιμοποιείται για να υποδείξει την παροχή ρεύματος. Ανάβει κόκκινο όταν τροφοδοτείται η πλακέτα.
Μπλε LED: Το μπλε LED στην πλακέτα συνδέεται με τον ακροδέκτη GPIO. Μπορεί να ενεργοποιηθεί ή να απενεργοποιηθεί μέσω προγραμματισμού. Σε ορισμένες κινεζικές κλωνοποιημένες σανίδες όπως η δική μου, αυτό το led μπορεί επίσης να είναι σε κόκκινο χρώμα.
Καρφίτσες I / O: Εδώ έχει σημειωθεί σημαντική ανάπτυξη. Σε αντίθεση με το ESP8266, στο ESP32 μπορούμε να έχουμε πρόσβαση σε όλους τους ακροδέκτες I / O της μονάδας μέσω των ακίδων. Αυτές οι ακίδες είναι ικανές για ψηφιακή ανάγνωση / εγγραφή, αναλογική ανάγνωση / εγγραφή, PWM, IIC, SPI, DAC και πολλά άλλα. Θα το εξετάσουμε αργότερα. Αλλά αν σας ενδιαφέρει μπορείτε να μάθετε μέσω της περιγραφής pin στο φύλλο δεδομένων ESP32.
ESP-WROOM-32: Αυτή είναι η καρδιά της μονάδας ESP32. Είναι ένας μικροεπεξεργαστής 32-bit που αναπτύχθηκε από τα συστήματα Espressif. Αν είστε περισσότερο τεχνικός, μπορείτε να διαβάσετε το φύλλο δεδομένων ESP-WROOM-32. Παραθέτω επίσης μερικές σημαντικές παραμέτρους παρακάτω.
ESP32 |
|
Προσδιορισμός |
αξία |
Αριθμός πυρήνων |
2 |
Αρχιτεκτονική |
32 bit |
Συχνότητα CPU |
|
Wi-Fi |
ΝΑΙ |
Bluetooth |
ΝΑΙ |
ΕΜΒΟΛΟ |
512 KB |
ΛΑΜΨΗ |
16 MB |
Καρφίτσες GPIO |
36 |
Πρωτόκολλα επικοινωνίας |
SPI, IIC, I2S, UART, CAN |
Κανάλια ADC |
18 κανάλια |
Ψήφισμα ADC |
12-bit |
Κανάλια DAC |
2 |
Ψήφισμα DAC |
8-bit |
Προς το παρόν είναι όλες οι πληροφορίες που πρέπει να γνωρίζουμε για το υλικό. Θα καλύψουμε περισσότερο σε βάθος καθώς προχωράμε με διαφορετικά έργα χρησιμοποιώντας το ESP32.
Προγραμματισμός του ESP32
Όπως αναφέρθηκε προηγουμένως σε αυτό το σεμινάριο, θα προγραμματίσουμε το ESP32 χρησιμοποιώντας το Arduino IDE, δεδομένου ότι έχει ισχυρή υποστήριξη από την κοινότητα. Αλλά μπορείτε επίσης να προγραμματίσετε το ESP32 χρησιμοποιώντας άλλο λογισμικό από το ESP Toolchain.
Επίσης, αυτό το σεμινάριο θα εξηγήσει μόνο για να ξεκινήσετε με την πλατφόρμα των Windows. Εάν είστε από άλλες πλατφόρμες ακολουθήστε τους παρακάτω συνδέσμους
- Οδηγίες για Mac
- Οδηγίες για το Debian / Ubuntu Linux
- Οδηγίες για το Fedora
- Οδηγίες για το openSUSE
Προετοιμασία του Arduino IDE:
ΒΗΜΑ 1: Τώρα, ας ξεκινήσουμε. Το πρώτο βήμα θα ήταν να κατεβάσετε και να εγκαταστήσετε το Arduino IDE. Αυτό μπορεί να γίνει εύκολα ακολουθώντας τον σύνδεσμο https://www.arduino.cc/en/Main/Software και κατεβάζοντας το IDE δωρεάν. Εάν έχετε ήδη βεβαιωθείτε ότι είναι της τελευταίας έκδοσης.
ΒΗΜΑ 2: Στη συνέχεια, προχωρήστε σε αυτόν τον σύνδεσμο για να κατεβάσετε το GIT και μια λήψη θα ξεκινήσει αυτόματα με το όνομα "Git-2.16.2". Περιμένετε να ολοκληρωθεί η λήψη.
ΒΗΜΑ 3: Μόλις ολοκληρωθεί η λήψη, ανοίξτε το αρχείο exe για να εγκαταστήσετε το GIT στον υπολογιστή σας. Απλώς κάντε κλικ στο Επόμενο για όλες τις επιλογές χωρίς να αλλάξετε τίποτα για να προχωρήσετε στην εγκατάσταση.
ΒΗΜΑ 4: Αναζητήστε το όνομα "GIT GUI" για να βρείτε αυτό που μόλις εγκαταστήσαμε. Μην ανοίξετε το GIT bash. Από προεπιλογή, το GIT GUI θα εγκατασταθεί στη μονάδα δίσκου C κάτω από τον κατάλογο αρχείων προγράμματος
ΒΗΜΑ 5: Εκκινήστε την εφαρμογή GIT GUI. Στη συνέχεια, επιλέξτε " Clone exiting repository ".
ΒΗΜΑ 6: Θα εμφανιστεί το ακόλουθο παράθυρο στο οποίο πρέπει να κάνετε τα εξής.
Στην περιοχή Επικόλληση τοποθεσίας πηγής: https://github.com/espressif/arduino-esp32.git
Στην ενότητα Επικόλληση καταλόγου στόχων: / hardware / espressif / esp32
μπορείτε να βρείτε κάνοντας κλικ στο Αρχείο -> Προτιμήσεις στο Arduino IDE
Το δικό μου είναι C: / Users / Aswinth / Documents / Arduino , οπότε ο κατάλογος-στόχος μου θα είναι C: / Users / Aswinth / Documents / Arduino / hardware / Espressif / esp32 . Μόλις επικολλήθηκε η οθόνη μου φαινόταν άρεσε όπως φαίνεται παρακάτω
ΒΗΜΑ 7: Αφού διασφαλίσετε τις σωστές διαδρομές τοποθεσίας, κάντε κλικ στον κλώνο και θα εμφανιστεί η ακόλουθη οθόνη.
ΒΗΜΑ 8: Τώρα αναζητήστε ξανά το " Git Bash " και ανοίξτε το. Θα λάβετε το ακόλουθο παράθυρο.
ΒΗΜΑ 9: Τώρα πληκτρολογήστε " cd" και, στη συνέχεια, επικολλήστε ξανά τον κατάλογο Target σας εδώ Το δικό μου έμοιαζε έτσι μετά την επικόλληση. Στη συνέχεια, πατήστε enter.
ΒΗΜΑ 10: Τώρα επικολλήστε το git submodule update --init –recursive και πατήστε enter για να λάβετε την ακόλουθη οθόνη.
ΒΗΜΑ 11: Τώρα ανοίξτε "/ hardware / espressif / esp32 / tools" και μετά κάντε διπλό κλικ στο αρχείο get.exe . Περιμένετε να ολοκληρωθεί η διαδικασία. Μόλις ολοκληρωθεί, θα πρέπει να δείτε τα ακόλουθα αρχεία στον κατάλογο
Αυτό είναι τώρα το Arduino IDE μας είναι έτοιμο να συνεργαστεί με το ESP32. Ας προχωρήσουμε και ελέγξτε αν λειτουργεί.
Προγραμματισμός ESP32 με Arduino IDE:
ΒΗΜΑ 1: Συνδέστε την πλακέτα ESP32 στον υπολογιστή σας μέσω του καλωδίου micro-USB. Βεβαιωθείτε ότι το κόκκινο LED πηγαίνει ψηλά στη μονάδα για να εξασφαλίσετε την παροχή ρεύματος.
ΒΗΜΑ 2: Ξεκινήστε το Arduino IDE και μεταβείτε στο Εργαλεία -> Πίνακες και επιλέξτε την πλακέτα ESP32Dev όπως φαίνεται παρακάτω
ΒΗΜΑ 3: Ανοίξτε τη διαχείριση συσκευών και ελέγξτε σε ποια θύρα είναι συνδεδεμένο το ESP32. Το δικό μου είναι συνδεδεμένο στο COM 8 όπως φαίνεται παρακάτω
ΒΗΜΑ 4: Επιστρέψτε στο Arduino IDE και στην περιοχή Εργαλεία -> Θύρα επιλέξτε τη θύρα στην οποία είναι συνδεδεμένο το ESP σας. Μόλις επιλεγεί, θα πρέπει να δείτε κάτι τέτοιο στην κάτω αριστερή γωνία του IDE.
ΒΗΜΑ 5: Ας ανεβάσουμε το πρόγραμμα Blink, για να ελέγξουμε εάν μπορούμε να προγραμματίσουμε τη μονάδα ESP32. Αυτό το πρόγραμμα θα πρέπει να αναβοσβήνει το LED σε διάστημα 1 δευτερολέπτου.
int LED_BUILTIN = 2; άκυρη ρύθμιση () {pinMode (LED_BUILTIN, OUTPUT); } κενός βρόχος () {digitalWrite (LED_BUILTIN, HIGH); καθυστέρηση (1000) digitalWrite (LED_BUILTIN, LOW); καθυστέρηση (1000) }
Το πρόγραμμα μοιάζει πολύ με τον κωδικό Arduino που αναβοσβήνει, επομένως δεν τους εξηγώ λεπτομερώς. Αλλά μια αλλαγή είναι ότι, εδώ στο ESP32 η ενδεικτική λυχνία LED είναι συνδεδεμένη με τον αριθμό pin 2, ενώ για το Arduino θα συνδεθεί με τον αριθμό pin 13.
ΒΗΜΑ 6: Για να ανεβάσετε τον κώδικα, απλώς κάντε κλικ στην αποστολή και θα πρέπει να δείτε την κονσόλα Arduino να εμφανίζει τα ακόλουθα εάν όλα λειτουργούν όπως αναμένεται.
Σημείωση: Για ορισμένες ενότητες, ίσως χρειαστεί να κρατήσετε πατημένο το κουμπί Boot κατά τη μεταφόρτωση για να αποφύγετε λάθη.
Αυτό είναι ότι ανεβάσαμε με επιτυχία τον πρώτο κωδικό στον πίνακα ESP32 μας. Η μονάδα μου με το LED που αναβοσβήνει φαίνεται παρακάτω
Μπορείτε να προχωρήσετε και να δοκιμάσετε τα άλλα παραδείγματα προγραμμάτων που είναι διαθέσιμα στο Αρχείο -> Παράδειγμα -> ESP32 για να εργαστείτε με άλλες λειτουργίες του ESP32. Εάν είχατε κάποιο πρόβλημα κατά τη λήψη αυτής της εργασίας, μη διστάσετε να δημοσιεύσετε το ερώτημα στις παρακάτω ενότητες σχολίων. Μπορείτε επίσης να χρησιμοποιήσετε το φόρουμ για να λάβετε τεχνική βοήθεια.