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

The Holi-Tie: 8 βήματα (με εικόνες)
The Holi-Tie: 8 βήματα (με εικόνες)

Βίντεο: The Holi-Tie: 8 βήματα (με εικόνες)

Βίντεο: The Holi-Tie: 8 βήματα (με εικόνες)
Βίντεο: How To Tie 5 Macrame Basic Knots | Πώς Να Κάνεις 5 Βασικούς Κόμπους Μακραμέ 2024, Ιούλιος
Anonim
Image
Image

Από το gwfongMonkey Patching Ακολουθήστε περισσότερα από τον συγγραφέα:

Φωτιστική ράμπα σκύλου
Φωτιστική ράμπα σκύλου
Γλυπτό από ατσάλινη καρδιά και λιωμένο γυαλί
Γλυπτό από ατσάλινη καρδιά και λιωμένο γυαλί
Γλυπτό από ατσάλινη καρδιά και λιωμένο γυαλί
Γλυπτό από ατσάλινη καρδιά και λιωμένο γυαλί
Σύρμα χαλκού και πεταλούδα από λιωμένο γυαλί
Σύρμα χαλκού και πεταλούδα από λιωμένο γυαλί
Σύρμα χαλκού και πεταλούδα από λιωμένο γυαλί
Σύρμα χαλκού και πεταλούδα από λιωμένο γυαλί

Σχετικά: Απλώς ένας τύπος που θέλει να φτιάξει υπέροχα πράγματα Περισσότερα για το gwfong »

Αυτό είναι το Holi-Tie, μια γιορτινή γραβάτα που έχει σχεδιαστεί για να φοριέται κατά τη διάρκεια των διακοπών. Χαλαρά βασισμένο στο Ampli-Tie της Becky Stern που χρησιμοποιεί έναν πίνακα Flora, το Holi-Tie χρησιμοποιεί έναν μικροελεγκτή Circuit Python Express (CPX) για να οδηγήσει τις κινούμενες εικόνες και τη μουσική NeoPixel. Ένα κουμπί αλλάζει μεταξύ 2 διαφορετικών κινήσεων NeoPixel. Οι χωρητικές επιφάνειες αφής αλλάζουν τα χρώματα NeoPixel και τις ταχύτητες κίνησης. Το άλλο κουμπί αλλάζει μεταξύ κινήσεων LED και μουσικής. Το ενσωματωμένο μικρόφωνο χρησιμοποιείται για τη μέτρηση του θορύβου περιβάλλοντος για την κίνηση του μετρητή VU. Και το ηχείο CPX εξάγει μελωδίες διακοπών.

Όλα κωδικοποιούνται χρησιμοποιώντας τη γλώσσα προγραμματισμού Python που λειτουργεί πάνω στο σύστημα CircuitPython. Τροφοδοτείται από μπαταρία LiPo 3.7V, 500mAH, η οποία τροποποιήθηκε για να διαθέτει διακόπτη on/off.

Υπάρχουν δύο βίντεο κλιπ που δείχνουν το Holi-Tie:

  • Ολοκληρώθηκε η Holi-Tie
  • Μέσα στο Holi-Tie

Βήμα 1: Μέρη και εργαλεία

Ανταλλακτικά

  • Circuit Playground Express
  • 15x Flora Neopixels
  • Μαγνητικό σύρμα
  • Κολλητική ταινία γάντζου και βρόχου
  • Μπαταρία λιπό 500mAH με βύσμα JST
  • Γραβάτα Candy Cane
  • Mini slide switch, SPDT
  • Σωλήνες συρρίκνωσης θερμότητας

Όταν προμηθεύεστε τα ανταλλακτικά, θα ήταν σοφό να αγοράσετε επιπλέον. Είχα συνολικά 20 NeoPixels, ένα από τα οποία ήταν σπασμένο από την αρχή και ένα το κατέστρεψα. Η γραβάτα Candy Cane ήταν τόσο φθηνή που αγόρασα μια δεύτερη σε περίπτωση που χάλασα την πρώτη.

Εργαλεία

  • Πυροβόλο θερμής κόλλας
  • Σταθμός συγκόλλησης
  • Συρματοκόπτης
  • Μικρό μαχαίρι
  • Πολύμετρο
  • Υπολογιστή
  • Αναπτήρας ή πιστόλι θερμότητας
  • Νήμα και βελόνα

Βήμα 2: Προετοιμασία της γραβάτας

Ετοιμάζοντας τη γραβάτα
Ετοιμάζοντας τη γραβάτα
Ετοιμάζοντας τη γραβάτα
Ετοιμάζοντας τη γραβάτα
Ετοιμάζοντας τη γραβάτα
Ετοιμάζοντας τη γραβάτα

Ο κύριος στόχος είναι να αποκτήσετε πρόσβαση στον εσωτερικό πυρήνα του δεσμού και να οριοθετήσετε γραμμές που υποδεικνύουν πού πρέπει να τοποθετηθούν τα LED.

Βήμα 1: Δέστε τη γραβάτα στη θέση της

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

Υπάρχουν όλα τα είδη των διαφορετικών κόμπων γραβάτας. Ξέρω μόνο αυτό που έμαθα ως παιδί, το Windsor. Δεν πρέπει να έχει σημασία ποιος κόμπος χρησιμοποιείται.

Βήμα 2: Ανοίξτε το πίσω μέρος της γραβάτας

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

Βήμα 3: Σχεδιάστε γραμμές όπου πρέπει να τοποθετηθούν τα LED

Για να εμφανίζονται οι λυχνίες LED στα τμήματα των λευκών λωρίδων της γραβάτας, είναι ευκολότερο να βρείτε την κεντρική γραμμή για κάθε τμήμα λευκών λωρίδων στο πίσω μέρος του πυρήνα της γραβάτας και, στη συνέχεια, να τη χαρτογραφήσετε στο μπροστινό μέρος του πυρήνα της γραβάτας. Ελέγξτε και ελέγξτε ξανά ότι η κεντρική γραμμή είναι 1) στο κέντρο και 2) παράλληλη με τη λωρίδα. Ο λεπτομερής συντονισμός των θέσεων LED θα είναι δυνατός εάν είναι λίγο σβησμένοι. Αλλά είναι καλύτερο να το πάρετε τόσο κοντά όσο ακριβώς τώρα και όχι αργότερα.

Δοκιμάστε το κεντράρισμα των γραμμών τοποθετώντας LED στις γραμμές και τοποθετώντας το ύφασμα με ρίγες από πάνω. Ρυθμίστε όπου χρειάζεται.

Βήμα 3: Επισύναψη των NeoPixels

Επισύναψη των NeoPixels
Επισύναψη των NeoPixels
Επισύναψη των NeoPixels
Επισύναψη των NeoPixels
Επισύναψη των NeoPixels
Επισύναψη των NeoPixels
Επισύναψη των NeoPixels
Επισύναψη των NeoPixels

Βασικά, φτιάχνουμε τη δική μας λωρίδα LED. Τοποθετούμε απλά τα LED στον πυρήνα της γραβάτας και στη συνέχεια τα συνδέουμε μεταξύ τους.

Βήμα 1: Προσαρμόστε τα NeoPixels στον πυρήνα της γραβάτας

Τοποθετήστε μια σταγόνα ζεστής κόλλας στο πίσω μέρος του NeoPixel τοποθετήστε το στις κεντρικές γραμμές. Για τα τμήματα με 3 NeoPixels, ευθυγραμμίστε κάθετα το κεντρικό NeoPixel και κολλήστε πρώτα αυτά. Αυτό θα διευκολύνει την τοποθέτηση του αριστερού και του δεξιού NeoPixel σε σχέση με το κέντρο ειδικά δεδομένου ότι το πλάτος της γραβάτας αυξάνεται από πάνω προς τα κάτω.

Φροντίστε να προσανατολίσετε όλα τα NeoPixels προς την ίδια κατεύθυνση, πηγαίνοντας από κάτω αριστερά προς τα πάνω δεξιά. Εάν αυτό δεν είναι σωστό, η λωρίδα δεν θα λειτουργήσει.

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

Βήμα 3: Συγκολλήστε τα NeoPixels μεταξύ τους

Επειδή αποφάσισα να κολλήσω μαζί τα NeoPixels αντί να χρησιμοποιήσω αγώγιμο νήμα, η τρύπα στα μαξιλάρια NeoPixel λειτουργεί εναντίον μας. Απλώς βρείτε ένα καλό μέρος στο μαξιλάρι για να κολλήσετε το καλώδιο. Μην προσπαθήσετε να γεμίσετε την τρύπα με κόλλα, αλλά αν συμβεί, θα είναι εντάξει.

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

Βήμα 4: Δοκιμάστε τη συνδεσιμότητα

Χρησιμοποιήστε ένα πολύμετρο για να ελέγξετε τη συνδεσιμότητα:

  1. Θετικές συνδέσεις. Θα πρέπει να υπάρχει συνδεσιμότητα από την άκρη στην ουρά. Βεβαιωθείτε ότι η δοκιμαστική συνδεσιμότητα στα τακάκια και όχι το καλώδιο.
  2. Συνδέσεις εδάφους. Εκτελέστε την ίδια δοκιμή αλλά με τα μαξιλάρια γείωσης.
  3. Κάθε γραμμή δεδομένων. Από το ένα πεδίο δεδομένων στο επόμενο, βεβαιωθείτε ότι υπάρχει συνδεσιμότητα.

Βήμα 4: Προσάρτηση του Circuit Playground Express

Τοποθέτηση του Circuit Playground Express
Τοποθέτηση του Circuit Playground Express

Το Circuit Playground Express (CPX) είναι η καρδιά του συστήματος. Το Adafruit έχει πολλά σεμινάρια για αυτόν τον ελεγκτή. Αργότερα σε αυτό το διδακτικό, θα επισημάνω μερικές από τις δυνατότητες του MCU.

Βήμα 1: Κολλήστε το CPX στο κάτω άκρο NeoPixel

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

Στη συνέχεια, αναποδογυρίστε τον πυρήνα της γραβάτας και τοποθετήστε το CPX στη θέση επιθυμίας. Τροφοδοτήστε το καλώδιο τροφοδοσίας στο μαξιλάρι VOUT, το καλώδιο γείωσης σε οποιοδήποτε μαξιλάρι γείωσης και το καλώδιο δεδομένων σε οποιοδήποτε πληκτρολόγιο εισόδου/εξόδου εκτός από το A0. Ο κώδικας που έχω γράψει χρησιμοποιεί A3.

Δοκιμάστε τη συνδεσιμότητα.

Βήμα 2: Συνδέστε το CPX

Χρησιμοποιώντας ένα νήμα και μια βελόνα, επιλέξτε οποιαδήποτε τέσσερα ισοδύναμα μαξιλάρια και ράψτε τα στον πυρήνα της γραβάτας.

Βήμα 5: Ενεργοποίηση του CPX

Τροφοδοσία CPX
Τροφοδοσία CPX
Τροφοδοσία CPX
Τροφοδοσία CPX
Τροφοδοσία CPX
Τροφοδοσία CPX

Το CPX δεν διαθέτει διακόπτη on/off. Αυτό σημαίνει ότι τη στιγμή που η μπαταρία είναι συνδεδεμένη, η γραβάτα θα ανάψει. Αυτό σημαίνει επίσης ότι ο μόνος τρόπος για να το απενεργοποιήσετε είναι να αποσυνδέσετε την μπαταρία, η οποία είναι μια μεγάλη ταλαιπωρία. Μια απλή λύση είναι να θέσετε έναν διακόπτη απενεργοποίησης/απενεργοποίησης της μπαταρίας.

Βήμα 1: Κόψτε τον 3ο πείρο στο διακόπτη

Μία από τις μη κεντρικές ακίδες δεν χρειάζεται. Κόψτε το στο ίδιο επίπεδο με το σώμα του διακόπτη.

Βήμα 2: Συγκολλήστε τον διακόπτη σε γραμμή καλωδίου μπαταρίας

Κόψτε το καλώδιο γείωσης της μπαταρίας κάπου στη μέση. Σύρετε ένα κομμάτι σωλήνα συρρίκνωσης θερμότητας σε καθένα από τα καλώδια γείωσης. Συγκολλήστε το ένα καλώδιο γείωσης σε έναν από τους πείρους και το άλλο σύρμα γείωσης στον άλλο πείρο. Βεβαιωθείτε ότι δεν αγγίζουν το ένα το άλλο ή ότι η συγκόλληση αγγίζει το μεταλλικό σώμα.

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

Βήμα 3: Βεβαιωθείτε ότι η μπαταρία λειτουργεί

Σε αυτό το σημείο, η μπαταρία μπορεί να συνδεθεί στο CPX. Εάν όλα πήγαν καλά, ο διακόπτης θα πρέπει να μπορεί να ενεργοποιεί και να απενεργοποιεί το CPX.

Βήμα 4: Τοποθετήστε την μπαταρία

Βάλτε λίγο κολλητική ταινία και γάντζο στην πίσω πλευρά της μπαταρίας και στον πυρήνα της γραβάτας. Αυτό θα το κρατήσει στη θέση του εάν η γραβάτα δεν χειρίζεται πολύ.

Βήμα 6: Ρύθμιση του Circuit Playground Express

Δεν θα μπω σε λεπτομέρειες σχετικά με τον τρόπο ρύθμισης του CPX. Το Adafruit το κάνει και μετά μερικά. Θα δώσω μερικές συμβουλές για ζητήματα που συναντούσα αρκετά συχνά.

Το CPX παγώνει

Πιθανώς λόγω προβλημάτων μνήμης χρόνου εκτέλεσης, το CPX θα παγώσει αρκετά συχνά. Η γρήγορη λύση είναι να διαγράψετε και να αναβοσβήσετε ξανά. Αναζητήστε το "Old Way" σε αυτές τις οδηγίες. Βασικά, πρόκειται για μερικά πατήματα κουμπιών, ένα drag and drop για διαγραφή και στη συνέχεια ένα drag and drop για να αναβοσβήνει ξανά.

Προειδοποίηση: Αυτό διαγράφει τα πάντα. Όλος ο κωδικός στο CPX θα χαθεί.

Η αποθήκευση αλλαγών στο CPX μπορεί να προκαλέσει προβλήματα

Ανακάλυψα ότι μερικές φορές μετά την αποθήκευση ενός αρχείου στο CPX, ο χρόνος εκτέλεσης του python θα ήταν σε κακή κατάσταση. Η επιδιόρθωση ήταν η επανεκκίνηση του χρόνου εκτέλεσης του python πατώντας το κουμπί επαναφοράς. Πατήστε το μόνο μία φορά. Πιέζοντάς το δύο φορές θα ξεκινήσει η διαδικασία αναβοσβήματος.

Η άμεση αποθήκευση σε CPX είναι επικίνδυνη

Λόγω της πιθανότητας ότι το CPX πρέπει να αναβοσβήνει, διατρέχει τον κίνδυνο να χάσει όλο τον κωδικό του. Αφού έχασα τον κωδικό μου δύο φορές, κατέληξα σε μια απλή ροή εργασίας. Θα αποθηκεύσω τον κωδικό μου στον τοπικό σκληρό δίσκο. Όταν ήταν έτοιμο να δοκιμαστεί στο CPX, απλώς θα το αντιγράψω εκτελώντας ένα απλό σενάριο ανάπτυξης.

Βήμα 7: Κωδικοποίηση του Circuit Playground Express

Σε αυτό το σημείο, το CPX και το NeoPixels είναι σχεδόν πλήρη. Καμία άλλη μηχανική ή ηλεκτρική εργασία δεν χρειάζεται να γίνει μαζί τους. Τα υπόλοιπα είναι όλα λογισμικά.

Μπορείτε να βρείτε τον κωδικό στο λογαριασμό μου στο github. Ο βασικός κώδικας python θα πρέπει να λειτουργεί χωρίς αλλαγές σε όλα τα λειτουργικά συστήματα. Μην εγκαταστήσετε τις εξωτερικές βιβλιοθήκες Adafruit CircuitPython. Δεν χρησιμοποιούνται.

Εδώ είναι μια περίληψη υψηλού επιπέδου για το τι συμβαίνει στον κώδικα.

Τι είσοδος κάνει τι;

  • Κουμπί Α: Κυκλοφορεί μέσω των κινήσεων LED
  • Κουμπί Β: Κυκλοφορεί μέσα από τα τραγούδια
  • Capacitive Touch Pad A1: Αλλάζει τα χρώματα για τις κινούμενες εικόνες LED
  • Capacitive Touch Pad A6: Αλλάζει την ταχύτητα των κινούμενων εικόνων LED

3 κινούμενα σχέδια υπάρχουν αλλά μόνο 2 είναι σε ισχύ

code.py

εισαγωγή pixelsoff

#import vumeter import stairs import twinkle… led_animations = [pixelsoff. PixelsOff (pixels), # vumeter. VuMeter (pixels, 100, 400) stairs. Stairs (pixels), twinkle. Twinkle (pixels)]

Έχω μεταφέρει τον κωδικό στυλ μετρητή Ampli-Tie VU. Χρησιμοποιεί το μικρόφωνο CPX για λήψη ήχου και φωτισμό των NeoPixels με βάση το εύρος του ήχου. Ωστόσο, ήθελα περισσότερα κινούμενα σχέδια. Λόγω περιορισμών μνήμης χρόνου εκτέλεσης έπρεπε να επιλέξω ποια κινούμενα σχέδια θέλω. Έτσι, από προεπιλογή, τα άλλα δύο, το Stairs και το Twinkle, θα λειτουργούν χωρίς να χρειάζεται να κάνετε αλλαγές στον κώδικα. Για να εκτελέσετε την κινούμενη εικόνα μετρητή VU, πρέπει να σχολιάσετε ένα ή και τα δύο κινούμενα σχέδια και να μην σχολιάσετε το μετρητή VU.

Music Manager και Off-Line Encoding

frosty_the_snowman.py

εισαγωγή μουσικών_σημειώσεων ως μν

# Frosty the Snowman # Walter E. Rollins τραγούδι = [(mn. G4, mn. HLF), (mn. E4, mn. DTQ), (mn. F4, mn. ETH), (mn. G4, mn. QTR), (mn. C5, mn. HLF),…

convert_to_binary.py

τραγούδια = [(jingle_bells.song, "jingle_bells.bin"), (frosty_the_snowman.song, "frosty_the_snowman.bin")] για τραγούδι σε τραγούδια: data = τραγούδι [0] αρχείο = τραγούδι [1] με ανοιχτό (αρχείο, "wb") ως bin_file: για εισαγωγή στα δεδομένα: εκτύπωση ("εγγραφή:" + str (καταχώριση)) σημείωση = καταχώριση [0] dur = καταχώριση [1] bin_file.write (struct.pack ("<HH", σημείωση, dur))

Wantedθελα μουσική διακοπών. Το CPX υποστηρίζει τόσο WAV όσο και τόνους. Τα αρχεία WAV αποδείχθηκαν πολύ μεγάλα όσον αφορά το μέγεθος και τη μνήμη χρόνου εκτέλεσης. Η χρήση δομών δεδομένων python για τη συγκράτηση των τόνων και η διάρκειά τους αποδείχθηκε επίσης ότι χρησιμοποιεί υπερβολική μνήμη χρόνου εκτέλεσης. Έτσι, τροποποίησα τον κώδικα Holi-Tie για να διαβάσω ένα συμπιεσμένο δυαδικό αρχείο το οποίο περιείχε μόνο τα απαραίτητα δεδομένα τραγουδιού σε συμπιεσμένη δυαδική μορφή. Έγραψα ένα σενάριο που διαβάζει ένα τραγούδι σε δομή δεδομένων python και το γράφω σε δυαδική μορφή. Η κωδικοποίηση του τραγουδιού ως δυαδικών δεδομένων σε ένα αρχείο καθιστά το τραγούδι μικρό και δυναμικό. Μόλις ολοκληρωθεί η αναπαραγωγή του τραγουδιού, η μνήμη απελευθερώνεται.

Είναι ασήμαντο να προσθέσετε περισσότερα τραγούδια. Για λεπτομέρειες, δείτε το README.md στα τραγούδια.

Το κουμπί A κινεί τα NeoPixels, B Παίζει μουσική, αλλά όχι ταυτόχρονα

code.py

def button_a_pressed ():

if music.is_playing (): # Διακοπή μουσικής εάν παίζετε music.stop () next_led_animation () def button_b_pressed (): if active_led_animation! = 0: # Εκτέλεση κινούμενης εικόνας χωρίς λειτουργίες next_led_animation (0) εάν μουσική. is_playing (): # Εναλλαγή μουσική ενεργοποίηση ή απενεργοποίηση music.stop () αλλιώς: music.play ()

Ακόμα και με το πιο αποτελεσματικό σύστημα διαχείρισης μουσικής μουσικής, δεν μπόρεσα να κρατήσω στη μνήμη χρόνου εκτέλεσης 2 κινούμενα σχέδια, ενώ έπαιζα 1 από αυτά και επίσης έπαιζα ένα τραγούδι ταυτόχρονα. Επειδή είχα ήδη επιλέξει να μην έχω καθόλου VU μετρητή στη μνήμη εκτέλεσης, δεν ήθελα να μειώσω τον αριθμό των κινούμενων εικόνων σε μόνο 1. Έτσι έγραψα τον κώδικα έτσι ώστε είτε να παίζει το animation είτε να παίζει η μουσική αλλά όχι και τα δυο. Μια άλλη επιλογή ήταν να μειωθεί ο αριθμός των NeoPixels, αλλά αυτό θα έχανε μέρος της δροσιάς του κινούμενου σχεδίου.

Python Code Funkiness

Αν και είμαι βετεράνος προγραμματιστής λογισμικού, δεν είχα γράψει ποτέ Python. Αφού το έμαθα και κοίταξα εφαρμόζοντας καλές πρακτικές κωδικοποίησης όπως ενθυλάκωση και διαμόρφωση, ανακάλυψα γρήγορα ότι χρησιμοποιούσα πάρα πολύ μνήμη χρόνου εκτέλεσης. Υπάρχει λοιπόν ένας αρκετά καλός κώδικας που δεν είναι DRY. Έπρεπε επίσης να χρησιμοποιήσω ορισμένες τεχνικές MicroPython όπως το const () για να μειώσω περαιτέρω τα προβλήματα μνήμης χρόνου εκτέλεσης.

Μεταγλωττισμένες ενότητες

συντάσσω

#!/bin/bash

compiler = ~/development/circuitpython/mpy-cross-3.x-windows.exe cd songs python3./convert_to_binary.py cd.. for f in *.py; κάντε εάν

Στις αρχές του έργου ακολούθησα τη συμβουλή του Adafruit και αποθήκευσα όλες τις βιβλιοθήκες του Adafruit CircuitPython στο flash. Αυτό, ωστόσο, άφησε λίγο χώρο για το έργο μου. Για να μπορέσω να μεταφέρω τον κωδικό μου στο CPX, άρχισα να συντάσσω τις ενότητες και να τις τοποθετώ στο MCU. Αποδεικνύεται ότι το Holi-Tie δεν χρειάζεται καμία από τις εξωτερικές βιβλιοθήκες. Οι υπάρχουσες βιβλιοθήκες στο UF2 ήταν αρκετές για αυτό το έργο. Η εκτέλεση των αρχείων *.mpy είναι λίγο πιο αποτελεσματική, έτσι κράτησα τη διαδικασία ανάπτυξης των μεταγλωττισμένων ενοτήτων.

Όπως είναι εμφανές στο παραπάνω σενάριο μεταγλώττισης, δουλεύω σε μηχάνημα Windows αλλά χρησιμοποιώ βοηθητικά προγράμματα Unix όπως bash και python3. Χρησιμοποιώ το Cygwin για να το πετύχω. Αυτό το σενάριο μπορεί εύκολα να μεταφραστεί σε παρτίδα DOS και σε μια εγγενή εφαρμογή Python3 των Windows.

Βήμα 8: Κουμπί επάνω στη γραβάτα

Κουμπί επάνω στη γραβάτα
Κουμπί επάνω στη γραβάτα
Κουμπί επάνω στη γραβάτα
Κουμπί επάνω στη γραβάτα

Το τελευταίο βήμα είναι να επαναφέρετε τον πυρήνα της γραβάτας στη θέση του, να συναρμολογήσετε ξανά τη γραβάτα και να την ράψετε ξανά. Φροντίστε να μπορείτε να κάνετε το CPX προσβάσιμο. Θα το χρειαστείτε όταν αντικαθιστάτε την μπαταρία ή κάνετε αλλαγές στον κωδικό.

Συνιστάται: