Πίνακας περιεχομένων:
- Βήμα 1: Βήμα 1: Δημιουργία κυκλώματος
- Βήμα 2: Βήμα 2: Κωδικός και επεξήγηση
- Βήμα 3: Βήμα 3: Επίδειξη βίντεο
Βίντεο: Arduino Piano With Push Button Switches: 3 Βήματα
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:34
Δημιουργήθηκε από: Haotian Ye
ΣΦΑΙΡΙΚΗ ΕΙΚΟΝΑ
Αυτός είναι ένας πίνακας πιάνου με οκτώ διακόπτες με κουμπιά που σας επιτρέπει να παίξετε μία οκτάβα (Do Re Mi Fa So La Si Do) και με αυτήν την οκτάβα μπορείτε να δοκιμάσετε να παίξετε μερικά τραγούδια που σας αρέσουν. Για αυτό το έργο υπάρχουν κάποιες σημαντικές γνώσεις που πρέπει να γνωρίζετε πριν ξεκινήσετε.
Πρώτον, πρέπει να γνωρίζουμε τις συχνότητες των βασικών νότες ενός πιάνου.
Οι συχνότητες αναφέρονται παρακάτω:
Do - 261Hz
Re - 294Hz
Mi - 329Hz
Fa - 349Hz
Έτσι - 392Hz
La - 440Hz
Si - 493Hz
Do - 523Hz
Δεύτερον, θα σας δείξω πώς να φτιάξετε το κύκλωμα χρησιμοποιώντας τα μέρη που μπορείτε να αγοράσετε από το Lee’s Electronic Store. Τέλος will Θα παρουσιάσω και θα εξηγήσω τον κώδικα που πρέπει να φορτωθεί στον πίνακα Arduino.
Μέρη που θα χρειαστείτε:
Arduino Uno R3 (Αναγνωριστικό προϊόντος: 10997)
Καλώδιο USB A έως B M/M (Αναγνωριστικό προϊόντος: 29861)
10K Resistor * 8 (Αναγνωριστικό προϊόντος: 91516)
Διαφορετικά χρώματα Tack Switch * 8 (Αναγνωριστικό προϊόντος: 3124, 31242, 31243, 31245, 31246)
Μίνι ηχείο (Αναγνωριστικό προϊόντος: 41680)
Breadboard (Αναγνωριστικό προϊόντος: 106861)
Jumper Wires (Αναγνωριστικό προϊόντος: 21801)
Βήμα 1: Βήμα 1: Δημιουργία κυκλώματος
Αρχικά, τοποθετήστε όλους τους διακόπτες και το μίνι ηχείο στο breadboard έναν έναν και ταιριάξτε τους σε μια σειρά. Στη συνέχεια, συνδέστε τις ακίδες κάθε διακόπτη κουμπιού στη γείωση. Δεύτερον συνδέστε αντιστάσεις 10k μεταξύ θετικής ισχύος και των άλλων ακίδων κάθε διακόπτη κουμπιού. Και, συνδέστε αυτήν τη στήλη στις ακίδες 2-9 στον πίνακα Arduino. Επίσης, συνδέστε τη γείωση με τον πείρο γείωσης και τη θετική ισχύ με τον ακροδέκτη 3,3v στο Arduino. Τέλος, συνδέστε το μίνι ηχείο στην ακίδα 10 στο Arduino.
Βήμα 2: Βήμα 2: Κωδικός και επεξήγηση
Ο παρακάτω κώδικας είναι αυτός που έγραψα
const int μαύρο = 2;
const int λευκό = 3;
const int κόκκινο = 4;
const int green = 5;
const int μπλε = 6;
const int black2 = 7;
const int green2 = 8;
const int red2 = 9;
const int ηχείο = 10; // Συνδέστε όλους τους διακόπτες και το ηχείο με τις ακίδες σήματος του arduino
int συχνότητα = {262, 294, 330, 349, 392, 440, 493, 523}; // ο πίνακας περιέχει όλες τις συχνότητες μιας οκτάβας
void setup () {
// βάλτε τον κωδικό εγκατάστασης εδώ, για να εκτελεστεί μία φορά:
pinMode (μαύρο, ΕΙΣΟΔΟΣ);
pinMode (λευκό, ΕΙΣΟΔΟΣ);
pinMode (κόκκινο, ΕΙΣΟΔΟΣ);
pinMode (πράσινο, ΕΙΣΟΔΟΣ);
pinMode (μπλε, ΕΙΣΟΔΟΣ);
pinMode (μαύρο2, ΕΙΣΟΔΟΣ);
pinMode (green2, INPUT);
pinMode (κόκκινο2, ΕΙΣΟΔΟΣ);
pinMode (ηχείο, OUTPUT);
τόνος (ηχείο, 2000).
Serial.begin (9600);
}
void loop () {
// βάλτε τον κύριο κωδικό σας εδώ, για να εκτελείται επανειλημμένα:
εάν (digitalRead (μαύρο) == ΧΑΜΗΛΟ) // όταν πατάτε το διακόπτη κουμπιού "DO"
{τόνος (ηχείο, συχνότητα [0], 50);
καθυστέρηση (50)?
noTone (ηχείο);}
else if (digitalRead (λευκό) == LOW) // όταν πατάτε το διακόπτη "RE"
{τόνος (ηχείο, συχνότητα [1], 50);
καθυστέρηση (50)?
noTone (ηχείο);}
else if (digitalRead (κόκκινο) == LOW) // όταν πατάτε το διακόπτη "MI"
{τόνος (ηχείο, συχνότητα [2], 50);
καθυστέρηση (50)?
noTone (ηχείο);}
else if (digitalRead (πράσινο) == LOW) // όταν πατάτε το διακόπτη "FA"
{τόνος (ηχείο, συχνότητα [3], 50);
καθυστέρηση (50)?
noTone (ηχείο);}
else if (digitalRead (μπλε) == LOW) // όταν πατάτε το διακόπτη "SO"
{τόνος (ηχείο, συχνότητα [4], 50);
καθυστέρηση (50)?
noTone (ηχείο);}
else if (digitalRead (black2) == LOW) // όταν πατάτε το διακόπτη "LA"
{τόνος (ηχείο, συχνότητα [5], 50);
καθυστέρηση (50)?
noTone (ηχείο);}
else if (digitalRead (green2) == LOW) // όταν πατάτε το διακόπτη "SI"
{τόνος (ηχείο, συχνότητα [6], 50);
καθυστέρηση (50)?
noTone (ηχείο);}
else if (digitalRead (red2) == LOW) // όταν πατάτε το διακόπτη κουμπιού "DO"
{τόνος (ηχείο, συχνότητα [7], 50);
καθυστέρηση (50)?
noTone (ηχείο);}
else // όταν δεν πατάτε τίποτα
noTone (ηχείο);
}
Αρχικά, πρέπει να δηλώσουμε όλους τους διακόπτες και το ηχείο του κουμπιού ως τον ακροδέκτη από 2 έως 10 στο Arduino. Κάθε διακόπτης αντιπροσωπεύει για μια νότα. Στη συνέχεια, χρησιμοποιήστε έναν πίνακα για να βάλετε όλες τις συχνότητες μέσα. Στη συνέχεια, η δήλωση If and else είναι αυτό που χρησιμοποιώ για να ενημερώσω το Arduino ποιον διακόπτη κουμπιού πατάω.
Τέλος, συνδέστε την πλακέτα Arduino στον υπολογιστή ή το φορητό υπολογιστή σας με καλώδιο usb A έως B. Πριν ανεβάσετε τον κωδικό σας, πρέπει ακόμα να κατεβάσετε το λογισμικό Arduino και να κάνετε κάποια προεπιλεγμένη ρύθμιση. Επιλέξτε Εργαλεία -> Πίνακας -> Arduino/Genuino Uno. Στη συνέχεια, πρέπει να επιλέξουμε τη θύρα επικοινωνίας που είναι συνδεδεμένη στον πίνακα Arduino. Επιλέξτε Εργαλεία -> Θύρα, και όποιο όνομα θύρας φέρει την ένδειξη "(Arduino/Genuino Uno)." Στη συνέχεια, μπορείτε να ανεβάσετε τον κωδικό στον πίνακα Arduino.
Συνιστάται:
FPGA Cyclone IV DueProLogic - Push Button & LED: 5 Βήματα
FPGA Cyclone IV DueProLogic - Push Button & LED: Σε αυτό το σεμινάριο, θα χρησιμοποιήσουμε το FPGA για τον έλεγχο εξωτερικού κυκλώματος LED. Θα υλοποιήσουμε τις ακόλουθες εργασίες (Α) Χρησιμοποιήστε τα κουμπιά στο FPGA Cyclone IV DuePrologic για τον έλεγχο της λυχνίας LED. (Β) Αναβοσβήνει το LED & απενεργοποιείται περιοδικάVideo demo Lab
Home Automation WiFi Light Switch With ESP-01 και Relay Module With Push Button: 7 Βήματα
Home Automation WiFi Light Switch With ESP-01 and Relay Module With Push Button: Έτσι στις προηγούμενες οδηγίες προγραμματίσαμε ένα ESP-01 με Tasmota χρησιμοποιώντας ένα ESP Flasher και συνδέσαμε το ESP-01 στα δίκτυα wifi μας. Τώρα μπορούμε να ξεκινήσουμε τον προγραμματισμό του για να ενεργοποιήσετε/απενεργοποιήσετε έναν διακόπτη φώτων χρησιμοποιώντας WiFi ή το κουμπί. Για την ηλεκτρική λειτουργία
4CH Relay-board Controlled With Push Button: 4 βήματα
4CH Relay-board Controlled With Push Button: Ο στόχος μου είναι να αναβαθμίσω τον τρισδιάστατο εκτυπωτή Anet A8 προσθέτοντας ένα τροφοδοτικό μέσω της διεπαφής Octoprint. Παρ 'όλα αυτά, θέλω επίσης να μπορώ να ξεκινήσω " χειροκίνητα " ο τρισδιάστατος εκτυπωτής μου, που σημαίνει ότι δεν χρησιμοποιώ τη διεπαφή ιστού αλλά απλώς πατάω ένα κουμπί
Raspberry Pi Push Button With LEDs Bare Metal: 8 Βήματα
Raspberry Pi Push Button With LEDs Bare Metal: Αυτό είναι το δεύτερο μου σεμινάριο για τον προγραμματισμό του raspberry pi 3 γυμνού μετάλλου! Δείτε εδώ το πρώτο μου. Την τελευταία φορά σας έδειξα πώς να δημιουργήσετε μια εικόνα λειτουργικού συστήματος για το raspberry pi 3 που αναβοσβήνει με ένα μόνο led, σε αυτό το σεμινάριο θα σας δείξω
Τρία Push ON - Push OFF Κυκλώματα σύσφιξης: 3 βήματα
Τρία Push ON-Push OFF Latching Circuits: Ένα flip-flop ή μάνδαλο είναι ένα κύκλωμα που έχει δύο σταθερές καταστάσεις και μπορεί να χρησιμοποιηθεί για την αποθήκευση πληροφοριών κατάστασης. Το κύκλωμα μπορεί να αλλάξει κατάσταση εφαρμόζοντας ένα σήμα (στην περίπτωση αυτή, πιέζοντας ένα κουμπί). Εδώ, θα σας δείξω τρεις διαφορετικούς τρόπους