Πίνακας περιεχομένων:

HackerBox 0050: 8 Βήματα
HackerBox 0050: 8 Βήματα

Βίντεο: HackerBox 0050: 8 Βήματα

Βίντεο: HackerBox 0050: 8 Βήματα
Βίντεο: Projects - July 2016 2024, Ιούλιος
Anonim
HackerBox 0050
HackerBox 0050

Χαιρετισμούς στους HackerBox Hackers σε όλο τον κόσμο! Για το HackerBox 0050, συναρμολογούμε και προγραμματίζουμε την ενσωματωμένη πλακέτα επεξεργαστή HB50. Το HB50 υποστηρίζει πειραματισμό με μικροελεγκτές ESP32, ενσωματωμένο WiFi IoT, ήχο bit bang, RGB LED, έγχρωμες οθόνες TFT LCD, εισόδους οθόνης αφής, Bluetooth και πολλά άλλα. Το HackerBox 0050 διερευνά επίσης μια μικρή λύση πληκτρολογίου για οποιοδήποτε ενσωματωμένο έργο, διεπαφές I2C, προϋπολογισμό ισχύος και κυψελοειδή αυτόματα.

Αυτός ο οδηγός περιέχει πληροφορίες για να ξεκινήσετε με το HackerBox 0050, οι οποίες μπορούν να αγοραστούν εδώ μέχρι εξαντλήσεως των αποθεμάτων. Αν θα θέλατε να λαμβάνετε ένα HackerBox όπως αυτό ακριβώς στο γραμματοκιβώτιό σας κάθε μήνα, εγγραφείτε στο HackerBoxes.com και λάβετε μέρος στην επανάσταση!

Το HackerBoxes είναι η μηνιαία συνδρομητική υπηρεσία κουτί για χάκερ υλικού και λάτρεις της ηλεκτρονικής και της τεχνολογίας υπολογιστών. Ελάτε μαζί μας για να ζήσετε το HACK LIFE.

Βήμα 1: Λίστα περιεχομένου για το HackerBox 0050

  • Αποκλειστική πλακέτα τυπωμένων κυκλωμάτων HB50
  • ESP-WROOM-32 Μονάδα WiFi διπλού πυρήνα
  • Έγχρωμη οθόνη TFT LCD 2.4 ιντσών QVGA
  • Ενσωματωμένη οθόνη αφής με γραφίδα
  • Έξι LED WS2812B RGB
  • Έξι κουμπιά επιφανειακής στήριξης
  • Piezo Buzzer 12mm SMD
  • AMS1117 Γραμμικός ρυθμιστής 3.3V SOT223
  • Δεξιά κεφαλίδα 40pin Breakaway
  • Δύο πυκνωτές τανταλίου 22uF 1206 SMD
  • Δύο αντιστάσεις 10K Ohm 0805 SMD
  • Μίνι πληκτρολόγιο CardKB
  • Grove to Female DuPont Breakout Cable
  • Σειριακή μονάδα USB CP2102
  • DuPont Jumpers Γυναίκα-Γυναίκα 10εκ
  • Hokusai Great Wave PCB Decal
  • Αποκλειστικό αυτοκόλλητο HackerBox WireHead
  • Αποκλειστικό νόμισμα πρόκλησης HackerBox 50

Κάποια άλλα πράγματα που θα σας βοηθήσουν:

  • Συγκολλητικό σίδερο, συγκόλληση και βασικά εργαλεία συγκόλλησης
  • Υπολογιστής για τη λειτουργία εργαλείων λογισμικού

Το πιο σημαντικό, θα χρειαστείτε μια αίσθηση περιπέτειας, πνεύμα χάκερ, υπομονή και περιέργεια. Το να χτίζεις και να πειραματίζεσαι με τα ηλεκτρονικά, αν και είναι πολύ ανταποδοτικό, μπορεί να είναι δύσκολο, προκλητικό, ακόμη και απογοητευτικό κατά καιρούς. Ο στόχος είναι η πρόοδος και όχι η τελειότητα. Όταν επιμένεις και απολαμβάνεις την περιπέτεια, μπορεί να προκύψει μεγάλη ικανοποίηση από αυτό το χόμπι. Κάντε κάθε βήμα αργά, προσέξτε τις λεπτομέρειες και μην φοβάστε να ζητήσετε βοήθεια.

Υπάρχει μια πληθώρα πληροφοριών για τα τρέχοντα και τα υποψήφια μέλη στις Συνήθεις Ερωτήσεις για τα HackerBoxes. Σχεδόν όλα τα μηνύματα ηλεκτρονικής υποστήριξης που λαμβάνουμε έχουν ήδη απαντηθεί εκεί, γι 'αυτό εκτιμούμε πραγματικά τον χρόνο που αφιερώσατε για να διαβάσετε τις Συνήθεις Ερωτήσεις.

Βήμα 2: Πίνακας τυπωμένων κυκλωμάτων HB50

Πίνακας τυπωμένων κυκλωμάτων HB50
Πίνακας τυπωμένων κυκλωμάτων HB50

Για να τιμήσουμε τον Αριθμό HackerBox 0050, περιστρέψαμε μια ενημερωμένη έκδοση της πιο δημοφιλούς πλακέτας κυκλώματος HackerBox με δημοφιλή ζήτηση. Το σετ σήματος HackerBox 0020 Summer Camp εξαντλήθηκε στο DEF CON 25 σε λιγότερο από δύο ώρες. Τα αρχεία PCB έχουν ζητηθεί συχνά. Ο πίνακας έχει ανατυπωθεί τουλάχιστον μερικές φορές από τρίτους. Ο σχεδιασμός έχει εμπνεύσει μια χούφτα άλλα σήματα και ενσωματωμένα έργα IoT που γνωρίζουμε και ελπίζουμε πολλά ακόμη που δεν γνωρίζουμε.

Οι ενημερώσεις που βρέθηκαν στο νέο HB50 PCB Kit περιλαμβάνουν την εναλλαγή του ESP-32 DEVkitC με την πιο συμπαγή μονάδα ESP-WROOM-32. Τα πέντε χωρητικά κουμπιά αφής αντικαταστάθηκαν με μηχανικά κουμπιά αφής. Τα πέντε LED RGB WS2812 που ήταν σε λευκές συσκευασίες αυξήθηκαν σε έξι και τώρα είναι σε μαύρες συσκευασίες. Ο πιεζοηλεκτρικός βομβητής αντικαταστάθηκε με μια πιο συμπαγή έκδοση για τοποθέτηση επιφάνειας. Η τροφοδοσία έχει απλοποιηθεί. Η έγχρωμη οθόνη TFT έχει αυξηθεί από 2,2 ίντσες σε 2,4 ίντσες. Το PCB είναι πιο συμπαγές και διαθέτει ακόμη και μερικές καρφίτσες IO για χακάρισμα. Από την εποχή του HackerBox 20, υπάρχουν πολλά περισσότερα έργα, παραδείγματα και κώδικας διαθέσιμα για το ESP32, οπότε ας ετοιμαστούμε να βροντήξουμε…

Χαρακτηριστικά:

  • Επεξεργαστής διπλού πυρήνα ESP32 160MHz
  • Έγχρωμη οθόνη TFT LCD 2,4 ιντσών QVGA
  • WiFi 802.11 b/g/n/d/e/i/k/r
  • Bluetooth LE 5.0
  • Πέντε απτικά κουμπιά (+ ένα για επαναφορά)
  • Έξι LED RGB WS2812
  • Piezo Buzzer
  • Γραμμικός ρυθμιστής 3.3V
  • Κεφαλίδα επέκτασης

Όπως και με τον προκάτοχό του, το HB50 μπορεί να φορεθεί σε κορδόνι, να χρησιμοποιηθεί ως φορητό, να τοποθετηθεί σε τοίχο ή να εφαρμοστεί σχεδόν οπουδήποτε σε αμέτρητες ασύρματες και πολύχρωμες εφαρμογές.

Βήμα 3: Αναδείξτε τον πίνακα HB50

Αναδείξτε τον πίνακα HB50
Αναδείξτε τον πίνακα HB50

Για να ελαχιστοποιήσετε ή τουλάχιστον να απομονώσετε τα σφάλματα, προτείνουμε την έναρξη της συναρμολόγησης συμπληρώνοντας μόνο το ελάχιστο των εξαρτημάτων στο PCB HB50 που απαιτούνται για τον προγραμματισμό του ESP32. Αυτή η ελάχιστη βιώσιμη προσέγγιση περιγράφεται σε αυτά τα βήματα:

  1. Παρακολουθήστε αυτό το βίντεο σχετικά με τις κολλητικές μονάδες συγκόλλησης.
  2. Συγκολλήστε τη μονάδα ESP-WROOM-32 στο PCB. Με την ησυχία σου. Μην ανησυχείτε για το κεντρικό μαξιλάρι γείωσης κάτω από τη μονάδα. Μπορεί να συγκολληθεί μόνο με ανανέωση και υπάρχει μόνο για πρόσθετη θερμική σύζευξη.
  3. Χρησιμοποιήστε ένα πολύμετρο για να βεβαιωθείτε ότι δεν υπάρχει βραχυκύκλωμα μεταξύ 3V3 και GND. Εάν υπάρχει ένα κοντό, πρέπει να εντοπιστεί και να αφαιρεθεί πριν από την εφαρμογή ισχύος στην πλακέτα ή μπορεί να βγει το τέρας καπνού.
  4. Συγκολλήστε τις δύο αντιστάσεις 10K ακριβώς πάνω από τα κουμπιά EN και IO0.
  5. Συγκολλήστε τα κουμπιά EN και IO0. Τα άλλα τέσσερα κουμπιά μπορούν να αφεθούν προς το παρόν.
  6. Σπάστε μια ταινία κεφαλίδας 16 ακίδων. Τοποθετήστε το από την πλευρά της CPU του PCB έτσι ώστε οι ακίδες να δείχνουν στο πλησιέστερο άκρο του PCB. Στη συνέχεια, κολλήστε την κεφαλίδα στη θέση της από την πλευρά του κουμπιού του PCB.
  7. Επαληθεύστε ξανά ότι δεν υπάρχουν σορτς μεταξύ 3V3 και GND.
  8. Χρησιμοποιήστε τέσσερα καλώδια jumper DuPont για να συνδέσετε τη μονάδα CP2102 όπως φαίνεται. Σημειώστε ότι χρησιμοποιούμε προσωρινά την πηγή τροφοδοσίας 3V3, επειδή ο γραμμικός ρυθμιστής δεν έχει συμπληρωθεί ακόμη στο PCB.
  9. Εάν ο υπολογιστής σας δεν έχει ήδη εγκαταστήσει το Arduino IDE, αποκτήστε το εδώ.
  10. Διαμορφώστε την υποστήριξη ESP32 στο Arduino IDE χρησιμοποιώντας αυτόν τον οδηγό.
  11. Στο IDE, ορίστε εργαλεία> πίνακα σε "ESP32 Wrover Module".
  12. Συνδέστε τη μονάδα CP2102 σε μια θύρα USB του υπολογιστή.
  13. Στο IDE, ορίστε εργαλεία> θύρα στη σωστή θύρα USB για το CP2102.
  14. Εάν δεν εμφανιστεί μια νέα θύρα κατά την εισαγωγή της μονάδας CP2102, εγκαταστήστε το απαιτούμενο πρόγραμμα οδήγησης USB από το Silicon Labs.
  15. Πιάστε το σκίτσο button_demo.
  16. Συγκεντρώστε και ανεβάστε το σκίτσο.
  17. Όταν ξεκινά η μεταφόρτωση, κρατήστε πατημένο το κουμπί EN και IO0. Το EN είναι βασικά ένα κουμπί επαναφοράς και το IO0 είναι ο πείρος για να αναγκάσει τον επαναπρογραμματισμό του φλας.
  18. Μόλις εμφανιστούν οι κουκκίδες και οι παύλες στο IDE, αφήστε το κουμπί EN (επαναφορά απελευθέρωσης), αλλά συνεχίστε να κρατάτε πατημένο το κουμπί IO0 έως ότου ο προγραμματισμός φλας αρχίσει να είναι βέβαιος ότι ο πείρος σύνδεσης αναγνωρίζεται κατά την εκκίνηση.
  19. Όταν ολοκληρωθεί ο προγραμματισμός, πατήστε ξανά το κουμπί EN για επαναφορά και εκκίνηση του νέου κωδικού που αναβοσβήνει.
  20. Ανοίξτε το Arduino IDE Serial Monitor και ρυθμίστε το σε 115200 baud.
  21. Πατώντας το κουμπί IO0 θα πρέπει να δημιουργηθεί ένα μήνυμα στη σειριακή οθόνη.

Βήμα 4: Κουμπιά, Buzzers και LED, OH MY

Κουμπιά, Buzzers και LED, OH MY!
Κουμπιά, Buzzers και LED, OH MY!

ΠΕΡΙΣΣΟΤΕΡΑ ΚΟΥΜΠΙΑ

Μόλις το αρχικό βήμα προγραμματισμού είναι επιτυχές, απενεργοποιήστε την πλακέτα HB50 και κολλήστε τα υπόλοιπα τέσσερα κουμπιά. Το ίδιο σκίτσο button_demo θα πρέπει τώρα να αναφέρει και τα πέντε κουμπιά (IO0, A, B, C και D) στη σειριακή οθόνη όταν πατηθούν.

ΒΟΜΒΗΤΗΣ

Απενεργοποιήστε τον πίνακα HB50 και κολλήστε τον βομβητή στα τακάκια του. Προσανατολίστε την κουκκίδα στο βομβητή για να είναι πιο κοντά στο μαξιλάρι "+" στον πίνακα HB50. Προγραμματίστε το buzzer_demo σκίτσο και επαναφέρετε (EN) τον πίνακα για να τον αφήσετε να τρέξει. Ακούγεται καλό?

LEDs WS2812B RGB

Απενεργοποιήστε τον πίνακα HB50 και κολλήστε τα έξι LED στα τακάκια τους. Προσανατολίστε τη λευκή σηματοδοτημένη γωνία κάθε LED ώστε να αντιστοιχεί στη γωνία με καρτέλες όπως φαίνεται στην μεταξοτυπία PCB.

Από τα εργαλεία Arduino IDE> Διαχείριση βιβλιοθηκών, εγκαταστήστε τη βιβλιοθήκη FastLED.

Ανοίξτε το σκίτσο: Αρχείο> Παραδείγματα> FastLED> ColorPalette.

Στον κώδικα σκίτσου, αλλάξτε το LED_PIN σε 13, το NUM_LEDS σε 6 και το LED_TYPE σε WS2812B.

Ανεβάστε το σκίτσο και επαναφέρετε (EN) τον πίνακα για να τον αφήσετε να τρέξει. Απολαύστε αστραφτερά φώτα κάθε χρώματος.

LINEAR POWER REGUALTOR

Με τα LED να παίζουν (και ειδικά μόλις ενεργοποιηθεί ο πομπός WiFi), το HB50 αντλεί πολύ ρεύμα από την τροφοδοσία 3V3. Ας βελτιώσουμε τη χωρητικότητα ισχύος 3,3V συγκολλώντας τον γραμμικό ρυθμιστή AMS1117 (πακέτο SOT 233) στη θέση του. Συμπληρώστε επίσης τους δύο πυκνωτές φίλτρου 22uF δίπλα στον ρυθμιστή. Σημειώστε ότι η μία πλευρά κάθε μεταξοτυπίας πυκνωτή είναι ορθογώνια και η άλλη πλευρά εάν είναι οκταγωνική. Οι πυκνωτές πρέπει να είναι προσανατολισμένοι έτσι ώστε το σκούρο κορδόνι στη συσκευασία να ευθυγραμμίζεται με την οκταγωνική πλευρά μεταξοτυπίας. Ο ρυθμιστής θα μετατρέψει τώρα μέρος της παροχής 5V σε 3.3V και μπορεί να παράσχει πολύ περισσότερο ρεύμα από τη μονάδα CP2102 από μόνη της. Για να τροφοδοτήσετε τώρα το HB50 μέσω της παροχής 5V, μετακινήστε και τα δύο άκρα του βραχυκυκλωτήρα 3V3 DuPont στα 5V. Δηλαδή, πηγαίνετε 5V από τη μονάδα CP2102 σε έναν από τους πείρους εισόδου 5V στην κεφαλίδα HB50. Σημειώστε ότι ο πείρος 5V μπορεί να τροφοδοτηθεί με οποιαδήποτε τάση μεταξύ 3,5V και 5V.

Βήμα 5: Έγχρωμη οθόνη TFT LCD ILI9341 QVGA

Έγχρωμη οθόνη TFT LCD ILI9341 QVGA
Έγχρωμη οθόνη TFT LCD ILI9341 QVGA

Η οθόνη MSP2402 (σελίδα lcdwiki) είναι μια μονάδα διαύλου SPI που βασίζεται στο τσιπ ILI9341. Το τσιπ οδηγεί μια έγχρωμη οθόνη 2,4 ιντσών που υποστηρίζει 65, 000 χρώματα και ανάλυση 320X240 pixels (QVGA).

Η μονάδα διαθέτει επίσης είσοδο οθόνης αφής και υποδοχή κάρτας SD.

PIN-PIS-DISPLAY DISPLAY PIN

Εάν αντιμετωπίσατε προβλήματα με τη συγκόλληση των ακίδων ESP-WROOM-32 μέχρι τώρα, ίσως είναι καλή ιδέα να δοκιμάσετε εκ των προτέρων τις ακίδες εισόδου/εξόδου της μονάδας οθόνης πριν συγκολλήσετε τη μονάδα οθόνης στη θέση της. Όπως φαίνεται παρακάτω και στο σχηματικό διάγραμμα του PCB, οι ESP32 IO που παίζουν είναι 19, 23, 18, 5, 22, 21 και 15. Σημειώστε ότι αυτοί είναι οι αριθμοί IO και όχι οι αριθμοί pin. Οι ακίδες μπορούν να δοκιμαστούν γράφοντας ένα μικρό πρόγραμμα που θέτει όλα αυτά τα IO ως εξόδους και στη συνέχεια βρόχους που περνούν μέσα από τους IO ενεργοποιώντας και απενεργοποιώντας το καθένα με τη σειρά του με μια δεύτερη ή δύο καθυστερήσεις μεταξύ τους. Ένα απλό LED με προσαρτημένη αντίσταση περιορισμού ρεύματος μπορεί να χρησιμοποιηθεί ως αισθητήρας για να βεβαιωθείτε ότι κάθε καρφίτσα IO που αντιστοιχεί στις κεφαλίδες της οθόνης (δείτε το σχηματικό) είναι σωστά ενεργοποιημένη και απενεργοποιημένη και ότι κανένα από αυτά δεν συνδέεται μεταξύ τους.

Μόλις επαληθευτούν όλες οι ακίδες, η οθόνη TFT μπορεί να συγκολληθεί στη θέση της χρησιμοποιώντας τόσο τις μακριές όσο και τις κοντές κεφαλίδες.

ΕΓΚΑΤΑΣΤΑΣΗ ΚΑΙ ΔΙΑΜΟΡΦΩΣΗ ΒΙΒΛΙΟΘΗΚΗΣ TFT

Από το Arduino IDE: εργαλεία> Διαχείριση βιβλιοθηκών, εγκαταστήστε τη βιβλιοθήκη TFT_eSPI

Μεταβείτε στο φάκελο Βιβλιοθήκες Arduino. Ανοίξτε το φάκελο TFT_eSPI και επεξεργαστείτε το αρχείο User_Setup.h για να διαμορφώσετε το τσιπ προγράμματος οδήγησης μονάδας, την ανάλυση εικονοστοιχείων και τις ακίδες IO. Για να το κάνετε αυτό, βεβαιωθείτε ότι οι ορισμοί είναι (μη) σχολιασμένοι όπως φαίνεται παρακάτω και έχουν οριστεί στις τιμές όπως φαίνεται. Μπορείτε να επαληθεύσετε ότι αυτές αντιστοιχούν στις συνδέσεις στο σχηματικό PCB.

// Τμήμα 1.

#define ILI9341_DRIVER #define TFT_WIDTH 240 #define TFT_HEIGHT 320 // Τμήμα 2. // Για ESP32 Dev board #define TFT_MISO 19 #define TFT_MOSI 23 #define TFT_SCLK 18 #define TFT_FF_TFT_FF TFT_RST -1 // #define TFT_BL 32 #define TOUCH_CS 15

Ανοίξτε και ανεβάστε το σκίτσο:

Αρχείο> Παραδείγματα> TFT_eSPI> 320 x 240> Cellular_Automata

Αυτό το σκίτσο είναι μια δροσερή οπτική επίδειξη του παιχνιδιού της ζωής του Conway.

Ένα αλεξίπτωτο χάκερ μπορεί να εξελιχθεί σε ύπαρξη … προσέξτε!

ΟΘΟΝΗ ΛΟΓΟΤΥΠΟ HACKERBOX ΣΕ TFT LCD

Δοκιμάστε το σκίτσο BitHeadDemo.

Βήμα 6: Είσοδος χρήστη οθόνης αφής

Οθόνη αφής Εισαγωγή χρήστη
Οθόνη αφής Εισαγωγή χρήστη

Το παρακάτω σκίτσο μπορεί να χρησιμοποιηθεί για τη διαμόρφωση και τη δοκιμή της λειτουργικότητας της οθόνης αφής:

Αρχείο> Παραδείγματα> TFT_eSPI> 320 x 240> Πληκτρολόγιο_240x320

Το κουμπί "αποστολή" μεταδίδει τον αριθμό που καταχωρίσατε στη σειριακή οθόνη στα 9600 baud.

Βήμα 7: Πληκτρολόγιο CardKB I2C

Πληκτρολόγιο CardKB I2C
Πληκτρολόγιο CardKB I2C

Αυτός ο μικροσκοπικός πίνακας υλοποιεί ένα πλήρες πληκτρολόγιο QWERTY το οποίο μπορεί να χρησιμοποιηθεί με σχεδόν οποιοδήποτε από τα έργα μικροελεγκτών σας. Το πληκτρολόγιο επικοινωνεί χρησιμοποιώντας μια θύρα GROVE A (διεπαφή I2C) στη διεύθυνση 0x5F. Συνδυασμοί πλήκτρων (Sym+Key, Shift+Key, Fn+Key) υποστηρίζονται για την παραγωγή πλούσιων τιμών κλειδιών.

Ξεκινήστε με το απλό παράδειγμα σκίτσο CardKB_Serial, το οποίο επικοινωνεί με το πληκτρολόγιο μέσω του GROVE I2C και ηχεί τα πατήματα πλήκτρων στο Serial Monitor. Το σκίτσο μπορεί να εκτελεστεί σε ESP32 (όπως το HB50), Arduino UNO, Arduino Nano ή οποιαδήποτε πλατφόρμα που υποστηρίζει I2C.

Σημειώστε ότι υπάρχουν δύο διαφορετικές κλήσεις Wire.begin για ESP32 και UNO/Nano. Μην σχολιάσετε την κατάλληλη από αυτές τις γραμμές για τον κεντρικό υπολογιστή που χρησιμοποιείτε. Συνδέστε τα κίτρινα και άσπρα καλώδια διαρροής GROVE στις ακίδες που καθορίζονται σε αυτήν τη γραμμή κώδικα. Συνδέστε το κόκκινο καλώδιο διαρροής GROVE στα 5V και το μαύρο καλώδιο GROVE στο GND.

Σελίδα τεκμηρίωσης κατασκευαστή. Σημειώστε ότι παρόλο που ο μικροελεγκτής CardKB είναι προεγκατεστημένος, η πηγή υλικολογισμικού είναι διαθέσιμη εάν θέλετε να χαράξετε το πληκτρολόγιο.

Βήμα 8:

Εικόνα
Εικόνα

Ελπίζουμε να απολαμβάνετε την περιπέτεια HackerBox αυτού του μήνα στα ηλεκτρονικά και την τεχνολογία υπολογιστών. Απευθυνθείτε και μοιραστείτε την επιτυχία σας στα παρακάτω σχόλια ή στην Ομάδα Facebook HackerBoxes. Επίσης, να θυμάστε ότι μπορείτε να στείλετε μήνυμα ηλεκτρονικού ταχυδρομείου στη διεύθυνση [email protected] ανά πάσα στιγμή εάν έχετε κάποια ερώτηση ή χρειάζεστε βοήθεια.

Τι έπεται? Ελάτε στην επανάσταση. Ζήστε το HackLife. Αποκτήστε ένα δροσερό κουτί με εργαλεία που μπορούν να σπάσουν και παραδίδονται απευθείας στο γραμματοκιβώτιό σας κάθε μήνα. Περιηγηθείτε στο HackerBoxes.com και εγγραφείτε για τη μηνιαία συνδρομή σας στο HackerBox.

Συνιστάται: