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

Arduino Λιγότερα γνωστά χαρακτηριστικά: 9 βήματα
Arduino Λιγότερα γνωστά χαρακτηριστικά: 9 βήματα

Βίντεο: Arduino Λιγότερα γνωστά χαρακτηριστικά: 9 βήματα

Βίντεο: Arduino Λιγότερα γνωστά χαρακτηριστικά: 9 βήματα
Βίντεο: 5 πράγματα που πρέπει να κάνεις στο σεξ για να κολλήσει μαζί σου 2024, Ιούλιος
Anonim
Λιγότερα γνωστά χαρακτηριστικά του Arduino
Λιγότερα γνωστά χαρακτηριστικά του Arduino

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

Κοιτάξτε τον κώδικα για να δείτε παραδείγματα για όλα αυτά τα χαρακτηριστικά όπως τα χρησιμοποίησα σε πολλά έργα μου εδώ με οδηγίες (π.χ. Arduino 1-wire Display (144 Chars)). Τα παρακάτω βήματα εξηγούν ένα χαρακτηριστικό το καθένα.

Βήμα 1: Τάση τροφοδοσίας

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

Για ακριβείς λεπτομέρειες σχετικά με το πώς να το κάνετε αυτό, συμπεριλαμβανομένου του παραδείγματος κώδικα, δείτε:

  • Secret Arduino Voltmeter-Μετρήστε την τάση της μπαταρίας:
  • Μπορεί το Arduino να μετρήσει το δικό του Vin;:

Βήμα 2: Εσωτερική θερμοκρασία

Ορισμένα Arduino είναι εξοπλισμένα με εσωτερικό αισθητήρα θερμοκρασίας και μπορούν επομένως να μετρήσουν την εσωτερική τους θερμοκρασία (ημιαγωγό).

Για ακριβείς λεπτομέρειες σχετικά με το πώς να το κάνετε αυτό, συμπεριλαμβανομένου του παραδείγματος κώδικα, δείτε:

Εσωτερικός αισθητήρας θερμοκρασίας:

Μπορεί το Arduino να μετρήσει το δικό του Vin;:

Βήμα 3: Αναλογική σύγκριση (διακοπή)

Το Arduino μπορεί να ρυθμίσει έναν αναλογικό συγκριτή μεταξύ των ακίδων A0 και A1. Έτσι το ένα δίνει το επίπεδο τάσης και το άλλο ελέγχεται για διασταύρωση αυτής της τάσης. Μια διακοπή αυξάνεται ανάλογα με το αν η διάβαση είναι άκρη ανόδου ή πτώσης (ή και τα δύο). Η διακοπή μπορεί στη συνέχεια να συλληφθεί από το λογισμικό και να ενεργήσει ανάλογα.

Για ακριβείς λεπτομέρειες σχετικά με το πώς να το κάνετε αυτό, συμπεριλαμβανομένου του παραδείγματος κώδικα, δείτε:

Διακοπή αναλογικού συγκριτή:

Βήμα 4: Μετρητής

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

Βήμα 5: Προκαθορισμένες σταθερές

Υπάρχουν ορισμένες προκαθορισμένες μεταβλητές που μπορούν να χρησιμοποιηθούν για την προσθήκη πληροφοριών έκδοσης και σύνταξης στο έργο σας.

Για ακριβείς λεπτομέρειες σχετικά με το πώς να το κάνετε αυτό, συμπεριλαμβανομένου του παραδείγματος κώδικα, δείτε:

Serial.println (_ DATE_); // ημερομηνία σύνταξης

Serial.println (_ TIME_); // χρόνος σύνταξης

String stringOne = String (ARDUINO, DEC);

Serial.println (stringOne); // arduino ide έκδοση

Serial.println (_ VERSION_); // έκδοση gcc

Serial.println (_ FILE_); // μεταγλωττισμένο αρχείο

Αυτά τα αποσπάσματα κώδικα θα εξάγουν αυτά τα δεδομένα στη σειριακή κονσόλα.

Βήμα 6: Διατήρηση μεταβλητής στη μνήμη RAM μέσω επαναφοράς

Είναι γνωστό ότι το Arduino Uno (ATmega328) διαθέτει εσωτερικό EEPROM που σας επιτρέπει να διατηρείτε τιμές και ρυθμίσεις κατά την απενεργοποίηση και να τις επαναφέρετε κατά την επόμενη ενεργοποίηση. Ένα όχι τόσο γνωστό γεγονός μπορεί να είναι ότι είναι πραγματικά δυνατό να διατηρηθεί η τιμή κατά την επαναφορά ακόμη και στη μνήμη RAM - ωστόσο οι τιμές χάνονται κατά τη διάρκεια του κύκλου ισχύος - με τη σύνταξη:

ανυπόγραφη μακρά μεταβλητή_τι_είναι_προσωπίζεται _attribute_ ((ενότητα (".οχινός")));

Αυτό σας επιτρέπει, για παράδειγμα, να μετρήσετε τον αριθμό RESET και χρησιμοποιώντας τον EEPROM επίσης τον αριθμό των power-ups.

Για ακριβείς λεπτομέρειες σχετικά με το πώς να το κάνετε αυτό, συμπεριλαμβανομένου του παραδείγματος κώδικα, δείτε:

  • Διατήρηση μεταβλητής στο Ram μέσω Reset:
  • Βιβλιοθήκη EEPROM:

Βήμα 7: Πρόσβαση στο σήμα ρολογιού

Το Arduinos και άλλα AVR (όπως το ATtiny) διαθέτουν εσωτερικό ρολόι που σας επιτρέπει να τα εκτελείτε χωρίς να χρησιμοποιείτε εξωτερικό ταλαντωτή κρυστάλλων. Επιπλέον, ταυτόχρονα μπορούν επίσης να συνδέσουν αυτό το σήμα με το εξωτερικό, τοποθετώντας το σε έναν πείρο (π.χ. PB4). Το περίπλοκο μέρος εδώ είναι ότι πρέπει να αλλάξετε τα bit ασφάλειας των τσιπ για να ενεργοποιήσετε αυτό το χαρακτηριστικό και η αλλαγή των bits ασφάλειας ενέχει πάντοτε τον κίνδυνο του τούβλου.

Πρέπει να ενεργοποιήσετε την ασφάλεια CKOUT και ο ευκολότερος τρόπος για να το κάνετε αυτό είναι να ακολουθήσετε τις οδηγίες σχετικά με τον τρόπο αλλαγής των bit ασφάλειας του μικροελεγκτή AVR Atmega328p - 8bit χρησιμοποιώντας Arduino.

Για ακριβείς λεπτομέρειες σχετικά με το πώς να το κάνετε αυτό, συμπεριλαμβανομένου του παραδείγματος κώδικα, δείτε:

  • Συντονισμός εσωτερικού ταλαντωτή ATtiny:
  • Πώς να αλλάξετε τα bit ασφάλειας του AVR Atmega328p-8bit μικροελεγκτή χρησιμοποιώντας Arduino:

Βήμα 8: Θύρα εσωτερικής δομής του ATmega328P

Η γνώση της εσωτερικής δομής των θυρών του ATmega328P μας επιτρέπει να υπερβούμε τα τυπικά όρια χρήσης. Ανατρέξτε στην ενότητα σχετικά με τον μετρητή χωρητικότητας για εύρος 20 pF έως 1000 nF για περισσότερες λεπτομέρειες και μια σχηματική εικόνα του εσωτερικού κυκλώματος.

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

Πιο εξελιγμένη είναι η χρήση αυτής της γνώσης όπως αναφέρεται για τη μέτρηση των πυκνωτών έως 20 pF και επιπλέον χωρίς καμία πρόσθετη καλωδίωση! Για να επιτευχθεί αυτή η απόδοση, το παράδειγμα χρησιμοποιεί την εσωτερική σύνθετη αντίσταση εισόδου, την εσωτερική αντίσταση έλξης και τον αδέσποτο πυκνωτή. Συγκρίνετε με το Arduino CapacitanceMeter Tutorial που δεν μπορεί να είναι χαμηλότερο από μερικά nF.

Βήμα 9: Ενσωματωμένο (ενσωματωμένο) LED ως φωτοανιχνευτής

Πολλοί πίνακες Arduino διαθέτουν ενσωματωμένα ή ενσωματωμένα LED που μπορούν να ελεγχθούν από τον κώδικα, π.χ. οι πλακέτες Uno ή Nano στον πείρο 13. Με την προσθήκη ενός μόνο καλωδίου από αυτόν τον πείρο σε έναν αναλογικό πείρο εισόδου (π.χ. A0) μπορούμε επίσης να χρησιμοποιήσουμε αυτό το LED ως φωτοανιχνευτή. Αυτό μπορεί να χρησιμοποιηθεί με ποικίλους τρόπους, όπως π.χ. χρήση για τη μέτρηση του φωτισμού περιβάλλοντος, χρήση LED ως κουμπιού, χρήση LED για επικοινωνία διόρθωσης (PJON AnalogSampling) κ.λπ.

Συνιστάται: