Σβήσιμο LED / Ενεργοποίηση / Απενεργοποίηση - Βασικά στοιχεία Arduino

Δοκιμάστε Το Όργανο Μας Για Την Εξάλειψη Των Προβλημάτων





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

Δημιουργία ενός εξασθενημένου εφέ

Βλέπουμε πώς να χρησιμοποιούμε μια λειτουργία analogwrite () για να εφαρμόσουμε ένα σβήσιμο ON / OFF ενός LED. Η λειτουργία ενσωματώνει παλμούς PWM σε ένα pinout για την επίτευξη της προτεινόμενης δράσης εξασθένισης πάνω από το συνδεδεμένο LED.



Απαιτείται υλικό

Μαζί με το Arduino σας, θα απαιτηθούν άλλα υλικά, όπως ένα breadboard, ένα LED και μια αντίσταση 220 ohm, 1/4 wat για το πείραμα.

Το κύκλωμα

Τα βήματα που ακολουθούνται για το προτεινόμενο LED ON / OFF ξεθώριασμα με Arduino είναι τα εξής:



1. Συνδέστε τον μακρύτερο ακροδέκτη του LED στον ψηφιακό πείρο εξόδου # 9 μέσω της αντίστασης 220 ohm σε σειρά, ενώ η κάθοδος ή ο κοντύτερος ακροδέκτης του LED με τη γείωση απευθείας ή την αρνητική ράγα τροφοδοσίας.

Ο κώδικας

Μόλις ο πείρος # 9 του πίνακα ενσωματωθεί ως θετικός πείρος LED, η λειτουργία setup () θα μπορούσε απλώς να μείνει μόνη της και δεν θα χρειαζόταν περαιτέρω εργασίες.

Το κύριο στοιχείο κώδικα βρόχου με τη μορφή analogwrite () χρειάζεται μερικές ευχαριστίες: Το πρώτο αφορά τη συνάρτηση σχετικά με το πείρο που θα χρησιμοποιηθεί για τη γραφή και το δεύτερο είναι η τιμή του PWM που θα καθοριστεί.

Για την έναρξη ενός φαινομένου εξασθένισης ON / OFF στο συνδεδεμένο LED, το PWM θα μπορούσε να κυμαίνεται σταθερά από μηδέν έως μέγιστο ή 255 και αντίστροφα, ολοκληρώνοντας ολόκληρο τον ενιαίο κύκλο λειτουργίας.

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

Σε μια κατάσταση όπου η φωτεινότητα είναι στις ακραίες τιμές (είτε 0 είτε 255), το μήνυμα σβήνει

να γίνει αρνητικό.

Σημασία εάν υποθέσουμε ότι το fadeAmount είναι 5, αλλάζει σε -5 και 5 σε περίπτωση που έχει οριστεί 55. Στις μεταγενέστερες περιόδους του βρόχου, αυτές οι αλλαγές έχουν ως αποτέλεσμα τη φωτεινότητα και ποικίλλει την πορεία της δράσης.

Η λειτουργία analoguewrite () προκαλεί γρήγορες αλλαγές στις τιμές PWM, έτσι ώστε η καθυστέρηση στο τέλος του σχεδίου να ελέγχει την ταχύτητα εξασθένισης.
Μπορείτε να πειραματιστείτε με τις τιμές καθυστέρησης για να διερευνήσετε τις αλλαγές που παράγονται στο πρόγραμμα.
/ *
Ξεθωριάζει

Αυτό το παράδειγμα δείχνει πώς να ξεθωριάσετε ένα LED στον ακροδέκτη 9
χρησιμοποιώντας τη λειτουργία analogWrite ().

Αυτό το παράδειγμα κώδικα βρίσκεται στον δημόσιο τομέα.
* /

int led = 9 // ο πείρος στον οποίο είναι συνδεδεμένο το LED
int brightness = 0 // πόσο φωτεινό είναι το LED
int fadeAmount = 5 // πόσα σημεία θα εξασθενίσει το LED κατά

// η ρουτίνα εγκατάστασης εκτελείται μία φορά όταν πατήσετε επαναφορά:
άκυρη ρύθμιση () {
// δηλώστε τον ακροδέκτη 9 ως έξοδο:
pinMode (led, OUTPUT)
}

// η ρουτίνα βρόχου τρέχει ξανά και ξανά για πάντα:
κενός βρόχος () {
// ορίστε τη φωτεινότητα του πείρου 9:
analogWrite (led, φωτεινότητα)

// αλλάξτε τη φωτεινότητα για την επόμενη φορά μέσω του βρόχου:
φωτεινότητα = φωτεινότητα + fadeAmount

// αντιστρέψτε την κατεύθυνση του ξεθωριάσματος στα άκρα του ξεθωριάσματος:
αν (φωτεινότητα == 0 || φωτεινότητα == 255) {
fadeAmount = -fadeAmount
}
// περιμένετε 30 χιλιοστά του δευτερολέπτου για να δείτε το φαινόμενο εξασθένισης
καθυστέρηση (30)
}




Προηγούμενο: 110V Compact LED Tubelight Circuit Επόμενο: Υψηλή τάση, Υψηλό ρεύμα τρανζίστορ TIP150 / TIP151 / TIP152 Δελτίο δεδομένων