Πίνακας περιεχομένων:
- Βήμα 1: Τι είναι το EEPROM;
- Βήμα 2: Εισαγάγετε τη βιβλιοθήκη
- Βήμα 3: Ορίστε τη σημαία αρχικοποίησης
- Βήμα 4: Ενημέρωση ρυθμίσεων
- Βήμα 5: Απολαύστε
Βίντεο: Arduino EEPROM Ρυθμίσεις Αρχικοποίηση: 5 Βήματα
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:36
Γεια σε όλους, Κάθε Arduino έχει μια μικρή ενσωματωμένη μνήμη που ονομάζεται EEPROM. Μπορείτε να το χρησιμοποιήσετε για να αποθηκεύσετε ρυθμίσεις για το έργο σας, όπου οι επιλεγμένες τιμές θα διατηρούνται μεταξύ των κύκλων τροφοδοσίας και θα είναι εκεί την επόμενη φορά που θα ενεργοποιήσετε το Arduino. Έχω ένα υπέροχο κόλπο που θα σας διδάξει πώς μπορείτε να εκκινήσετε ένα σύνολο προεπιλεγμένων τιμών κατά την πρώτη σας εκτέλεση, οπότε μείνετε κοντά για να μάθετε πώς.
Βήμα 1: Τι είναι το EEPROM;
Το EEPROM είναι ένας μικρός αποθηκευτικός χώρος μνήμης, οι τιμές του οποίου διατηρούνται ακόμη και όταν ο πίνακας Arduino είναι απενεργοποιημένος. Λειτουργεί σαν ένας μικροσκοπικός σκληρός δίσκος, ώστε να μπορείτε να αποθηκεύσετε τις παραμέτρους σας για την επόμενη φορά που θα ενεργοποιήσετε τη συσκευή. Ανάλογα με τον τύπο του πίνακα Arduino, θα έχετε διαφορετικό διαθέσιμο χώρο αποθήκευσης σε κάθε ένα, έτσι για παράδειγμα το Uno έχει 1024 byte, το Mega έχει 4096 byte και το LilyPad έχει 512 byte.
Είναι σημαντικό να σημειωθεί ότι όλα τα EEPROM έχουν περιορισμένο αριθμό κύκλων εγγραφής. Το Atmel καθορίζει ένα προσδόκιμο ζωής περίπου 100 000 κύκλων εγγραφής/διαγραφής για το EEPROM στο Arduino. Αυτό μπορεί να ακούγεται σαν πολλά γράμματα, αλλά μπορεί να είναι εύκολο να φτάσετε σε αυτό το όριο εάν διαβάζετε και γράφετε σε ένα βρόχο. Μόλις μια τοποθεσία έχει γραφτεί και διαγραφεί πάρα πολλές φορές, μπορεί να αρχίσει να γίνεται αναξιόπιστη. Ενδέχεται να μην επιστρέψει τα σωστά δεδομένα ή να επιστρέψει την τιμή από ένα γειτονικό bit.
Βήμα 2: Εισαγάγετε τη βιβλιοθήκη
Για να χρησιμοποιήσετε αυτήν τη μνήμη, συμπεριλαμβάνουμε πρώτα την παρεχόμενη βιβλιοθήκη από το Arduino. Η βιβλιοθήκη παρέχει δύο μεθόδους: ανάγνωση και γραφή για τις αντίστοιχες ενέργειες. Η συνάρτηση ανάγνωσης δέχεται τη διεύθυνση από την οποία θέλουμε να διαβάσουμε, ενώ η συνάρτηση εγγραφής δέχεται τόσο τη διεύθυνση όσο και την τιμή που θέλουμε να γράψουμε.
Στο παράδειγμά μας, ο στόχος είναι να έχουμε μια σειρά ρυθμίσεων έτοιμη σε κάθε εκκίνηση του Arduino, οπότε ξεκινάμε καθορίζοντας τον πίνακα που θα χρησιμοποιήσουμε για την αποθήκευση και καθορίζοντας τις διευθύνσεις για κάθε μία από τις ρυθμίσεις που θέλουμε να αποθηκεύσουμε. Σε ένα τσιπ όπου έχουμε 1024 byte διαθέσιμα, οι τοποθεσίες διευθύνσεων θα είναι από 0 έως 1023.
Βήμα 3: Ορίστε τη σημαία αρχικοποίησης
Το κόλπο για την αρχική ρύθμιση των προεπιλεγμένων τιμών για τις ρυθμίσεις είναι να χρησιμοποιήσετε μία από τις διευθύνσεις ως δείκτη εάν οι ρυθμίσεις έχουν αρχικοποιηθεί ή όχι. Έχω χρησιμοποιήσει την τελευταία διεύθυνση διεύθυνσης για αυτό καθώς συχνά δεν χρησιμοποιείται για τίποτα άλλο. Η λειτουργία loadSettings θα ελέγξει πρώτα αυτήν τη θέση εάν η αποθηκευμένη τιμή είναι χαρακτήρας "T" και αν όχι, θα μεταβεί στη ρύθμιση, γράφοντας τις αρχικές τιμές για καθένα από αυτά. Μόλις τελειώσει, τώρα θα ορίσει την τιμή της τοποθεσίας όπου παρακολουθούμε τις αρχικοποιημένες ρυθμίσεις στον χαρακτήρα "T" και την επόμενη φορά που θα ενεργοποιήσουμε το Arduino, δεν θα κάνουμε πλέον εκκίνηση των τιμών, αλλά αντίθετα θα διαβάσουμε τα αποθηκευμένα δεδομένα σε η συστοιχία μας.
Βήμα 4: Ενημέρωση ρυθμίσεων
Για την ενημέρωση των τιμών μπορούμε είτε να χρησιμοποιήσουμε τη συνάρτηση εγγραφής όπως την είχαμε στην αρχικοποίηση, αλλά ένας καλύτερος τρόπος είναι να χρησιμοποιήσουμε την παρεχόμενη συνάρτηση ενημέρωσης. Αυτό που κάνει αυτή η συνάρτηση είναι ότι ελέγχει πρώτα αν η τιμή που προσπαθούμε να αποθηκεύσουμε είναι η ίδια ήδη στο EEPROM και αν είναι τότε δεν ενημερώνεται. Με αυτόν τον τρόπο, προσπαθεί να ελαχιστοποιήσει τον αριθμό των λειτουργιών εγγραφής, προκειμένου να παραταθεί η διάρκεια ζωής του EEPROM.
Βήμα 5: Απολαύστε
Ελπίζω ότι αυτό το Instructable ήταν χρήσιμο για εσάς και ότι καταφέρατε να μάθετε κάτι. Ο πηγαίος κώδικας είναι διαθέσιμος στη σελίδα μου στο GitHub και ο σύνδεσμος είναι παρακάτω. Εάν έχετε οποιεσδήποτε προτάσεις, αφήστε τις στα σχόλια και μην ξεχάσετε να εγγραφείτε στο κανάλι μου στο YouTube για περισσότερα παρόμοια βίντεο.
Συνιστάται:
Ρυθμίσεις εντολών Bluetooth AT (HC05 HC06): 4 βήματα
Ρυθμίσεις εντολών Bluetooth AT (HC05 HC06): Γεια σας παιδιά! Ελπίζω να σας άρεσε ήδη το προηγούμενο εκπαιδευτικό " How to Control Servo Motor Arduino Tutorial ". Αυτό είναι ένα άλλο ενημερωτικό σεμινάριο για να σας διδάξει πώς να διασυνδέεστε με τη μονάδα Bluetooth και να διαμορφώνετε τις ρυθμίσεις της μέσω A
Πώς να αλλάξετε τις ρυθμίσεις απορρήτου της Google σε κινητά: 11 βήματα
Πώς να αλλάξετε τις ρυθμίσεις απορρήτου της Google σε κινητά: Η Google χρησιμοποιείται ευρέως παγκοσμίως, ωστόσο ορισμένοι άνθρωποι δεν συνειδητοποιούν ότι η Google διαθέτει πολλές δυνατότητες που μπορούν να έχουν πρόσβαση στα προσωπικά σας δεδομένα ή πληροφορίες. Σε αυτό το σεμινάριο, θα διδαχτείτε πώς μπορείτε να αλλάξετε τις ρυθμίσεις στον προσωπικό σας λογαριασμό για να περιορίσετε το
Ανιχνευτής μέτρησης επιπέδου υπογείων υδάτων για ρυθμίσεις χαμηλού πόρου: 4 βήματα (με εικόνες)
Ανιχνευτής μέτρησης επιπέδου υπογείων υδάτων για ρυθμίσεις χαμηλών πόρων: Εισαγωγή Λάβαμε ένα αίτημα από την Oxfam να αναπτύξουμε έναν απλό τρόπο με τον οποίο τα παιδιά σχολείων στο Αφγανιστάν θα μπορούσαν να παρακολουθούν τα επίπεδα των υπόγειων υδάτων στα κοντινά πηγάδια. Αυτή η σελίδα μεταφράστηκε στα Ντάρι από τον Δρ Amir Amir Haidari και η μετάφραση μπορεί να είναι
Δημιουργήστε μια αυτόματη δεξαμενή ποτίσματος με ειδοποιήσεις WiFi για ρυθμίσεις καλλιέργειας: 11 βήματα
Δημιουργήστε μια αυτόματη δεξαμενή ποτίσματος με ειδοποιήσεις WiFi για ρυθμίσεις καλλιέργειας: Σε αυτό το εκπαιδευτικό έργο DIY θα σας δείξουμε πώς να φτιάξετε μια αυτόματη δεξαμενή ποτίσματος με ειδοποιήσεις WiFi για εγκατάσταση καλλιέργειας ή για αυτόματο σύστημα ποτίσματος για τα ζώα σας, όπως σκύλους, γάτες, κοτόπουλα κλπ
Ρολόι με τηλεχειριστήριο IR για ρυθμίσεις ώρας/ημερομηνίας: 5 βήματα
Ρολόι με τηλεχειριστήριο IR για Ρυθμίσεις ώρας/ημερομηνίας: Αυτό είναι ένα απλό ρολόι που χρησιμοποιείται με άμεσα διαθέσιμα εξαρτήματα. Ο μικροελεγκτής που χρησιμοποιείται είναι ένα φθηνό STM32F030F4P6. Η οθόνη είναι LCD 16x2 με σακίδιο I2C (PCF8574). Το κύκλωμα ρολογιού μπορεί να κατασκευαστεί χρησιμοποιώντας μικρούς πίνακες πρωτοτύπων και ένα TSSOP