Spurino: JavaScript για μικροελεγκτές

Μικροελεγκτής Atmel, Espurino

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

Ωστόσο, θα προσπαθήσω να σας δώσω τα κλειδιά για το τι είναι το Espurino και τι θα μπορούσε να κάνει για εσάς για τα μελλοντικά σας έργα, καθώς και για ορισμένες προτάσεις για να μάθετε πώς να το προγραμματίζετε με απλό τρόπο.

Πριν από λίγο σας είπαμε για την Anaconda, ένα άλλο ενδιαφέρον έργο για τους λάτρεις της Python που ήθελαν χρονοδιάγραμμα πίνακες arduino με αυτήν τη γλώσσα προγραμματισμού που έχει γίνει τόσο δημοφιλής. Κάτι παρόμοιο με αυτό που κάνει MicroPython, αλλά αυτή τη φορά, με το Espurino, σας προσφέρει μια άλλη νέα ευκαιρία χρησιμοποιώντας μια διαφορετική γλώσσα ...

Τι είναι το Espurino;

Σφυρίνη

Σφυρίνη είναι ένα έργο ανοιχτού κώδικα για τη δημιουργία διερμηνέα γλώσσας προγραμματισμού JavaScript για μικροελεγκτές. Δηλαδή, αυτό το πλήρες IDE έχει σχεδιαστεί για να μπορεί να προγραμματίζει συσκευές με προγραμματιζόμενο μικροελεγκτή που έχουν μικρές μνήμες RAM, όπως μερικές που έχουν μόνο 8kB και χρησιμοποιούνται ευρέως σε πολλές ενσωματωμένες συσκευές.

Το έργο Espurino δημιουργήθηκε από τον Γκόρντον Γουίλιαμς το 2012, ως απόπειρα να επιτραπεί η ανάπτυξη μικροελεγκτών σε πολλές πλατφόρμες. Αρχικά δεν ήταν ανοιχτού κώδικα, απλώς πρόσφερε δωρεάν λήψη υλικολογισμικού για STM32 MCU.

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

Το υλικολογισμικό της Espurino έχει πλέον άδεια χρήσης με την άδεια Mozilla Public License 2.0, ενώ οι δείκτες κωδικών βρίσκονται στην άδεια MIT, την τεκμηρίωση στο Creative Commons Attribution-ShareAlike 3.0 και τα αρχεία σχεδιασμού υλικού κάτω από το τελευταίο.

Έτσι είναι το Επίσημο σήμα Espurino, που θα ακολουθούσαν πολλές εκδόσεις άλλων εκδόσεων όπως συνέβη με άλλα παρόμοια έργα όπως το Arduino. Επιπλέον, αυτοί οι πίνακες παρουσίασαν επίσης συμβατότητα με ασπίδες συμβατές με Arduino, γεγονός που τους δίνει μερικές πολύ ενδιαφέρουσες δυνατότητες για κατασκευαστές και DIYers.

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

Πηγαίος κώδικας έργου - GitHub

Επίσημη ιστοσελίδα - Σφυρίνη

Υλικολογισμικό - Λήψη (για τις διαφορετικές πινακίδες)

JavaScript; Μικροελεγκτής;

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

Un μικροελεγκτήςΟνομάζεται επίσης MCU (Micro Controller Unit), είναι ένα προγραμματιζόμενο τσιπ ικανό να εκτελεί ορισμένες παραγγελίες από τη μνήμη. Αυτό μπορεί να αντιστοιχεί και στον ορισμό της CPU, αλλά στην περίπτωση ενός MCU, είναι συνήθως λιγότερο προηγμένες και ισχυρές, στοχεύοντας συγκεκριμένες συγκεκριμένες εργασίες, όπως ενσωματωμένες συσκευές.

Επιπρόσθετα διαφορά από CPU, ο μικροελεγκτής είναι ένα ολοκληρωμένο κύκλωμα που περιλαμβάνει την ίδια την CPU, καθώς και άλλα λειτουργικά μπλοκ όπως η μνήμη και το σύστημα I / O. Θέλω να πω, είναι βασικά ένας πλήρης υπολογιστής σε ένα τσιπ ...

Επομένως, θα έχετε μια φτηνή και απλή συσκευή που μπορείτε να προγραμματίσετε έτσι ώστε οι είσοδοι και τα αποτελέσματά του να λειτουργούν όπως θέλετε και έτσι να δημιουργείτε ενέργειες. Μπορείτε να το κάνετε να λαμβάνει πληροφορίες από εξωτερικούς αισθητήρες ή ενεργοποιητές, και με βάση αυτό στέλνει ορισμένα σήματα μέσω των εξόδων του σε άλλους ΗΛΕΚΤΡΟΝΙΚΑ ΕΞΑΡΤΗΜΑΤΑ συνδεδεμένος.

Όσον αφορά το JavaScript, είναι μια ερμηνευμένη γλώσσα. Με άλλα λόγια, σε αντίθεση με τα μεταγλωττισμένα που μετά τη συλλογή δημιουργούν ένα δυαδικό που μπορεί να εκτελεστεί από έναν επεξεργαστή, στην περίπτωση ερμηνευμένων σεναρίων, θα χρειαστεί ένα ενδιάμεσο λογισμικό που ονομάζεται διερμηνέας, το οποίο θα ερμηνεύσει τις εντολές του κώδικα για να "πει" η CPU τι είναι. τι πρέπει να κάνει.

JS Έχει γίνει πολύ σημαντικό σήμερα λόγω των πολλαπλών εφαρμογών που διαθέτει, ειδικά σε εφαρμογές ιστού. Στην πραγματικότητα, αναπτύχθηκε αρχικά από τον Brendan Eich του Netscape (τότε Mocha, στη συνέχεια μετονομάστηκε σε LiveScript και τέλος σε JavaScript).

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

Παρεμπιπτόντως, για ξεκινήστε με το Espurino IDE, δεν θα χρειαστεί να εγκαταστήσετε τίποτα στο λειτουργικό σας σύστημα, είναι ένα περιβάλλον που βασίζεται στον Ιστό που μπορείτε να χρησιμοποιήσετε από εδώ στο αγαπημένο σας πρόγραμμα περιήγησης ιστού.

Παρόλο που μπορούν να χρησιμοποιηθούν διάφορα προγράμματα περιήγησης ιστού, για να αναβοσβήνει το υλικολογισμικό αυτών των πινάκων, συνιστάται η χρήση του Chrome και ενός πρόσθετου που ονομάζεται Espurino Web IDE, το οποίο συνιστάται από τον επίσημο ιστότοπο και μπορείτε να λάβετε για το Chrome αυτή η σύνδεση.

Πώς να μάθετε JavaScript;

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

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

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

Εάν ενδιαφέρεστε για αυτόν τον τρόπο μάθησης να ξεκινήσετε με το Espurino, εδώ σας αφήνω μερικοί πόροι για μάθηση JavaScript χρησιμοποιώντας παιχνίδια:

Επίσημα πιάτα Espurino

Πλάκες Spurine

Μετά την πρώτη ανάπτυξη του το πιάτο Το πρωτότυπο του Espurino ήρθε περισσότερα διαθέσιμα έργα για χρήση με το IDE και το JS. Αν θέλετε να μάθετε περισσότερα για αυτά, ακολουθεί μια εισαγωγή σε κάθε μία:

  • Espurino (πρωτότυπο): είναι η αρχική πλάκα, η πρώτη που σχεδιάστηκε βάσει αυτού του έργου. Τα χαρακτηριστικά τους είναι:
    • STM32F103RCT6 32-bit 72Mhz ARM Cortex-M3 MCU
    • 256Kb μνήμης flash, 28Kb μνήμης RAM
    • Υποδοχή εξωτερικής μπαταρίας microUSB, SD και JST PHR-2
    • Κόκκινα, μπλε και πράσινα LED
    • Επιθέματα που επιτρέπουν τη σύνδεση μονάδων Bluetooth HC-05
    • 44 GPIO με 26 PWM, 16 ADC, 3 UARTS, 2 SPI, 2 I2C και 2 DAC.
    • Διαστάσεις: 54x41mm
  • Κορυφή Spurino: είναι ένας μικρός πίνακας με μικροελεγκτή για να ξεκινήσει η εκτέλεση των έργων JavaScript και ο έλεγχος των πραγμάτων σε λίγα δευτερόλεπτα. Προγραμματίζεται μέσω της διεπαφής USB για να φορτώνει το σενάριο που γράφετε για το Espurino IDE. Επιπλέον, έχει μια οικονομική τιμή και μπορείτε να το βρείτε με καρφίτσες και χωρίς κολλημένα καρφίτσες στο κεφάλι του. Περισσότερες λεπτομέρειες:
      • 22 GPIO (9 αναλογική είσοδος, 21 PWM, 2 σειριακές, 3 SPI και 3 I2C).
      • Υποδοχή USB-A επί του σκάφους.
      • 2 LED και 1 κουμπί στο PCB.
      • STM32F401CDU6 32-bit 84Mhz ARM Cortex-M4 MCU
      • Μνήμη: 384 Kb flash και 96Kb RAM
      • Διαστάσεις 33x15mm
  • WiFi Spurino: Είναι πρακτικά διπλό με τον προηγούμενο, μόνο που έχουν προστεθεί ορισμένες βελτιώσεις. Για παράδειγμα, το μέγεθός του είναι 30x23mm, αυξάνοντας έτσι το χώρο για ένα τσιπ WiFi ESP8266. Επιπλέον, το USB έχει αλλάξει σε microUSB, ο αριθμός των GPIO έχει μειωθεί σε 21 (8 αναλογικά, 20 PWM, 1 σειριακό, 3 SPI και 3 I2C). Από την άλλη πλευρά, ο μικροελεγκτής έχει επίσης ενισχυθεί, τώρα είναι ένας STM32F411CEU6 32-bit 100Mhz ARM Cortex-M4 με 512kb μνήμης flash και 128 kb RAM.
  • Spurino Puck.js: Είναι βασικά ένα έξυπνο κουμπί Bluetooth που μπορείτε να προγραμματίσετε χάρη στον εσωτερικό του μικροελεγκτή και τον διερμηνέα (προεγκατεστημένο) με JS. Επιπλέον, διαθέτει 52832Mhz ARM Cortex-M4 nRF64 SoC με 64kB RAM και 512Kb φλας, GPIO, ετικέτα NFC, μαγνητόμετρο MAG3110, πομπό IR, ενσωματωμένο θερμόμετρο, καθώς και αισθητήρες στάθμης φωτός και μπαταρίας.
  • Spurino Pixl.js: Είναι μια συσκευή παρόμοια με την προηγούμενη, αλλά αντί για ένα κουμπί είναι μια προγραμματιζόμενη έξυπνη οθόνη Bluetooth LE. Η οθόνη του έχει διαστάσεις 128 × 64 μονόχρωμες, ενώ τα υπόλοιπα χαρακτηριστικά είναι παρόμοια με τα Puck.js.
  • MDBT42Q: είναι η ίδια μονάδα με τα Pixl.js και Puck.js, αλλά με κεραμική κεραία. Τα υπόλοιπα τεχνικά χαρακτηριστικά συμπίπτουν με τα δύο προηγούμενα, αλλά χωρίς οθόνη ή κουμπί σε αυτήν την περίπτωση ...
  • βραχιόλι.js: είναι το νεότερο προϊόν. Είναι ένα φορητό, ένα έξυπνο ρολόι ή ένα έξυπνο ρολόι. Θα μπορείτε να εγκαταστήσετε εφαρμογές και να αναπτύξετε νέες λειτουργίες χρησιμοποιώντας JavaScript ή μια γραφική γλώσσα προγραμματισμού (Blockly). Θα χρειαστείτε μόνο ένα πρόγραμμα περιήγησης ιστού για να μπορέσετε να γράψετε τους κωδικούς σας και να τους ανεβάσετε στο ρολόι ... Επιπλέον, είναι αδιάβροχο, διαθέτει Bluetooth, GPS, επιταχυνσιόμετρο, μαγνητόμετρο (για να ποσοτικοποιηθεί η ισχύς και η κατεύθυνση των μαγνητικών σημάτων), και τα λοιπά.

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


Γίνε ο πρώτος που θα σχολιάσει

Αφήστε το σχόλιό σας

Η διεύθυνση email σας δεν θα δημοσιευθεί. Τα υποχρεωτικά πεδία σημειώνονται με *

*

*

  1. Υπεύθυνος για τα δεδομένα: Miguel Ángel Gatón
  2. Σκοπός των δεδομένων: Έλεγχος SPAM, διαχείριση σχολίων.
  3. Νομιμοποίηση: Η συγκατάθεσή σας
  4. Κοινοποίηση των δεδομένων: Τα δεδομένα δεν θα κοινοποιούνται σε τρίτους, εκτός από νομική υποχρέωση.
  5. Αποθήκευση δεδομένων: Βάση δεδομένων που φιλοξενείται από τα δίκτυα Occentus (ΕΕ)
  6. Δικαιώματα: Ανά πάσα στιγμή μπορείτε να περιορίσετε, να ανακτήσετε και να διαγράψετε τις πληροφορίες σας.