Μετάβαση στο κύριο περιεχόμενο

Επαναφορά Arduino: Οι πιο εύκολες μέθοδοι

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

Κατανόηση της συνάρτησης "Επαναφορά" στο Arduino

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

Θυμηθείτε να το κάνετε αυτό πριν αποκαταστήσετε τη σύνδεση χρησιμοποιώντας USB ή τροφοδοτικό.

Με την επαναφορά του Arduino, ξεκινά η αρχική γραμμή κώδικα από το μεταφορτωμένο πρόγραμμα, ενώ τα προηγούμενα δεδομένα στη ROM διαγράφονται.

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

Η επιλογή επαναφοράς για το Arduino διευκολύνει την επανεκκίνηση της πλακέτας αρχικοποιώντας εκ νέου το τσιπ μικροελεγκτή AVR, μια λύση ενός τσιπ.

Μπλε PCB με μικροελεγκτή και μονάδα επικοινωνίας

Μπλε PCB με μικροελεγκτή και μονάδα επικοινωνίας

Η αναγκαιότητα επαναφοράς του Arduino

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

1. Εξάλειψη εσωτερικών δυσλειτουργιών

Εάν το Arduino σας φιλοξενεί ένα σφάλμα, η εκτέλεση του κώδικα μπορεί να καθυστερήσει. Χρησιμοποιήστε το κουμπί επαναφοράς ή αυτόματης επαναφοράς για να εξαλείψετε σφάλματα και να επαναφέρετε τη λειτουργικότητα.

2. Διαφυγή ατέρμονων βρόχων

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

Για να επιλύσετε αυτό το ζήτημα, είναι απαραίτητη η επαναφορά της πλακέτας, γι' αυτό και τα άτομα χρησιμοποιούν τη δυνατότητα επαναφοράς.

3. Διάγνωση δυσλειτουργιών

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

Μια πλακέτα Arduino UNO

Μια πλακέτα Arduino UNO

Επαναφορά Arduino με υποβοήθηση υλικού

Χρησιμοποιήστε το υλικό, δηλαδή την πλακέτα Arduino, για να πραγματοποιήσετε επαναφορά. Ακολουθήστε αυτά τα απλά βήματα:

1. Χρήση κουμπιού επαναφοράς

Παρατηρήστε το πορτοκαλί κουμπί στην πλακέτα Arduino UNO. Απλώς πατήστε το για να επαναφέρετε τη συσκευή.

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

2. Χρησιμοποιώντας το κουμπί επαναφοράς

  1. Αρχικά, συνδέστε την καρφίτσα επαναφοράς του Arduino με οποιαδήποτε ψηφιακή καρφίτσα. για παράδειγμα, μπορείτε να το συνδέσετε στο Pin #4.
  2. Συνεχίστε να ανεβάσετε τον ακόλουθο κώδικα στην πλακέτα Arduino:

3. Διαμόρφωση κουμπιού εξωτερικής επαναφοράς

Η μη πρόσβαση στο κουμπί επαναφοράς της πλακέτας Arduino ή σε μια ασπίδα που εμποδίζει απαιτεί ένα εξωτερικό κουμπί επαναφοράς.

Προετοιμάστε ένα breadboard, ένα κουμπί και τα καλώδια βραχυκυκλωτήρα δίπλα στην πλακέτα Arduino.

Αναφερόμενοι στο φύλλο δεδομένων Arduino UNO, μια χαμηλή τάση που διαρκεί τουλάχιστον 2 μικροδευτερόλεπτα επαναφέρει τη συσκευή.

Χρησιμοποιήστε το κουμπί ώθησης για να τροφοδοτήσετε τον ακροδέκτη RESET με χαμηλή τάση.

Για να το πετύχετε αυτό, συνδέστε το κανονικά ανοιχτό κουμπί, συνδέοντας τη μία πλευρά με τον ακροδέκτη RESET και την άλλη με το GND.

Όταν δεν πατάτε το κουμπί, η ακίδα RESET είναι ψηλά.

Ωστόσο, όταν πατηθεί, συνδέεται με τον ακροδέκτη GND και γίνεται χαμηλός.

Επαναφορά Arduino βάσει λογισμικού

Δεν μπορείτε να αποκτήσετε εξωτερική πρόσβαση στην πλακέτα σας Arduino; Μάθετε να το επαναφέρετε χρησιμοποιώντας το λογισμικό Arduino IDE και Arduino.

4. Επαναφορά χρήσης λειτουργίας

Η ενσωματωμένη λειτουργία επαναφοράς resetFunc(), που βρίσκεται στις βιβλιοθήκες του Arduino , προσφέρει έναν απλό τρόπο επαναφοράς του Arduino μέσω προγραμματισμού.

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

Αυτή η διαδικασία θα επανεκκινήσει την πλακέτα του Arduino, εκκινώντας το πρόγραμμα από την αρχική γραμμή κώδικα.

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

5. Τεχνική Watchdog Timer

Η μέθοδος timer watchdog παρουσιάζει μια άλλη εξαιρετική προσέγγιση για την επαναφορά της πλακέτας Arduino.

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

Ο κατασκευαστής τσιπ AVR υποστηρίζει αυτή τη μέθοδο, καθιστώντας την κορυφαία επιλογή για επαναφορές Arduino.

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

Στη συνέχεια, ενεργοποιήστε ένα χρονόμετρο, που κυμαίνεται από 15 χιλιοστά του δευτερολέπτου έως 8 δευτερόλεπτα, ανάλογα με τις ανάγκες σας.

Για παράδειγμα, για να δημιουργήσετε ένα χρονόμετρο 30 δευτερολέπτων, γράψτε wdt enable(WDTO_30ms).

Μπορείτε να αντικαταστήσετε το "30ms" με την επιθυμητή διάρκεια. Το χρονόμετρο επαναφέρει τον μικροελεγκτή εάν το πρόγραμμα διαρκεί περισσότερο από το αναμενόμενο.

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

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

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


Σχόλια

Δημοφιλείς αναρτήσεις από αυτό το ιστολόγιο

PWM στο Arduino

  PWM στο Arduino Εισαγωγή στο PWM Η διαμόρφωση πλάτους παλμού (PWM)   είναι μια τεχνική με την οποία το πλάτος ενός παλμού μεταβάλλεται διατηρώντας τη συχνότητα του κύματος σταθερή. Είναι μια μέθοδος παραγωγής αναλογικού σήματος με χρήση ψηφιακής πηγής. Γενιά PWM   Ένα σήμα PWM αποτελείται από δύο κύρια στοιχεία που καθορίζουν τη συμπεριφορά του: έναν  κύκλο λειτουργίας  και μια  συχνότητα  .   Τι είναι ο κύκλος λειτουργίας του σήματος Η περίοδος ενός παλμού αποτελείται από έναν  κύκλο  ON   (5V) και έναν    κύκλο  OFF  (0V). Το κλάσμα για το οποίο το σήμα είναι ενεργοποιημένο για μια περίοδο είναι γνωστό ως   κύκλος λειτουργίας  . Π.χ.  Ένας παλμός με περίοδο 10 ms θα παραμείνει ενεργός (υψηλό) για 2 ms. Επομένως, ο κύκλος λειτουργίας θα είναι D = 2ms / 10ms = 20%   Μέσω της τεχνικής PWM, μπορούμε να ελέγξουμε την ισχύ που παρέχεται στο φορτίο χρησιμοποιώντας το σήμα ON-O...

Tmp36GZ θερμόμετρο με LCD οθόνη

 Tmp36GZ με LCD οθόνη // Define to which pin of the Arduino the output of the TMP36 is connected: #include <LiquidCrystal_I2C.h> // Look for LiquidCrystal I2C library by Marco Schwartz LiquidCrystal_I2C lcd ( 0x 27 , 16 , 2 ) ;  // set the LCD address to 0x3F for a 16 chars and 2 line display #define sensorPin A0 void setup () {   // Begin serial communication at a baud rate of 9600:   Serial . begin ( 9600 ) ;   lcd . init () ;   lcd . clear () ;           lcd . backlight () ;      // Make sure backlight is on     // Print a message on both lines of the LCD.   lcd . setCursor ( 2 , 0 ) ;   //Set cursor to character 2 on line 0   lcd . print ( "Hello world!" ) ;     lcd . setCursor ( 2 , 1 ) ;   //Move cursor to character 2 on line 1   lcd . print ( "LCD Tutorial" ) ; } void loop () {   // Get a reading from the temperature sensor:   int reading ...

Πώς να χρησιμοποιήσετε ένα Breadboard

  Πώς να χρησιμοποιήσετε ένα Breadboard Το breadboard έχει εσωτερικές συνδέσεις μεταξύ των οπών του. Μερικές κάθετες συνδέσεις και μερικές οριζόντιες συνδέσεις. Κανονικά, χρησιμοποιείτε τις κολώνες στα πλάγια για να συνδέσετε το τροφοδοτικό σας. Και χρησιμοποιείτε τις σειρές στη μέση για να συνδέσετε τα στοιχεία σας. Στήλες Τροφοδοτικού Είναι σύνηθες να χρησιμοποιείτε τις στήλες στα αριστερά και δεξιά για τη σύνδεση του τροφοδοτικού. Αυτές οι στήλες συνδέονται κάθετα. Έτσι, εάν συνδέσετε 5 βολτ στην επάνω οπή μιας από τις πλευρικές κολώνες, θα έχετε 5 βολτ σε όλες τις οπές αυτής της στήλης. Χρησιμοποιήστε τις στήλες που επισημαίνονται με κόκκινη γραμμή για το συν και τη στήλη με μπλε γραμμή για το μείον. Τέλος φόρμας Σημείωση: Μερικές μεγαλύτερες πλάκες   breadboard χωρίζονται στα δύο έτσι ώστε το πάνω μισό να αποσυνδεθεί από το κάτω μισό. Αυτό υποδεικνύεται από τις κατακόρυφες μπλε και κόκκινες γραμμές που χωρίζονται στα δύο.   Περιοχή Συστατικού Σ...