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

Arduino Synth / Tone Generator: 5 Βήματα
Arduino Synth / Tone Generator: 5 Βήματα

Βίντεο: Arduino Synth / Tone Generator: 5 Βήματα

Βίντεο: Arduino Synth / Tone Generator: 5 Βήματα
Βίντεο: Как использовать ESP32 WiFi и Bluetooth с Arduino IDE, полная информация с примерами и кодом. 2024, Νοέμβριος
Anonim
Arduino Synth / Tone Generator
Arduino Synth / Tone Generator

Πρόκειται για μια γεννήτρια Synth / Tone που χρησιμοποιεί την εντολή Tone που είναι εγγενής στο Arduino. Διαθέτει 12 μεμονωμένα πλήκτρα που μπορούν να ρυθμιστούν για αναπαραγωγή οποιασδήποτε συχνότητας τετραγωνικού κύματος. Έχει τη δυνατότητα να ανεβοκατεβαίνει τις οκτάβες με ένα κουμπί. Διαθέτει επίσης ένα δεύτερο Arduino που θα δημιουργήσει ένα "beat" και μπορείτε να κάνετε κύκλο σε κάθε ρυθμό και να ρυθμίσετε το ρυθμό του ρυθμού με το ποτενσιόμετρο. Βγαίνει σε ένα μόνο ηχείο. Μπορεί να φαίνεται περίπλοκο, αλλά στην πραγματικότητα είναι πολύ απλό να το κάνετε και μπορείτε να προσαρμόσετε τους ήχους σας αλλάζοντας τον κώδικα.

Βήμα 1: Υλικά

  • 2 Arduino Unos
  • 17 Αντιστάσεις 1kΩ
  • 1 Ποτενσιόμετρο 50kΩ
  • 16 διακόπτες τακτικής (κουμπιά)
  • 1 ηχείο 4Ω
  • 1 μπαταρία 9V
  • Πολύ σύρμα

Αν θέλετε να κολλήσετε τον τελικό πίνακα και να φτιάξετε ένα τελικό προϊόν όπως το δικό μου, θα χρειαστείτε επίσης

  • 1 Protoboard
  • 2 28 υποδοχές καρφιτσών
  • Κεφαλίδες ανδρών και γυναικών
  • 1 ρυθμιστής 5V
  • 1 47 uF Πυκνωτής
  • 2 κρύσταλλα 16 Mhz
  • 2 Διακόπτες ενεργοποίησης/απενεργοποίησης
  • Ένα πληκτρολόγιο παιχνιδιών για να αφαιρέσετε τα κλειδιά από

Βήμα 2: Καλωδίστε το Breadboard

Καλωδίστε το Breadboard
Καλωδίστε το Breadboard
Καλωδίστε το Breadboard
Καλωδίστε το Breadboard
Καλωδίστε το Breadboard
Καλωδίστε το Breadboard

Χρησιμοποιώντας την παραπάνω εικόνα δημιουργήστε το κύκλωμα στο breadboard.

Για το πρώτο γάντζο arduino 12 τακτ αλλάζει έως τις ακίδες 13-2 το καθένα με τη δική του αντίσταση έλξης. Συνδέστε 2 ακόμη διακόπτες σε A5 και A4 με τον ίδιο τρόπο. Το τελευταίο πράγμα που πρέπει να συνδέσετε είναι το ηχείο. Συνδέστε το ένα άκρο στη γείωση και το άλλο άκρο στο pin 0.

Για το δεύτερο γάντζο arduino 2 μεταβαίνει στην ακίδα 9 και 10 με τον ίδιο τρόπο όπως πριν. Συνδέστε το ποτενσιόμετρο 50k στην ακίδα A0, 5V και με αντίσταση 1k στη γείωση. Τέλος, συνδέστε τον ακροδέκτη 8 στο ίδιο καλώδιο στο ηχείο που συνδέσατε στο πρώτο arduino. Μην ξεχάσετε να συνδέσετε τους χώρους και των δύο arduinos μαζί.

Βήμα 3: Ο κώδικας

Ο κώδικας
Ο κώδικας

Στη συνέχεια, ανεβάστε τον κωδικό πληκτρολογίου Tone στο πρώτο arduino και τον κωδικό Rhythm Section στο δεύτερο ardunio. Εάν ο κώδικας δεν θέλει να μεταφορτωθεί, δοκιμάστε να αποσυνδέσετε το ηχείο προσωρινά και δοκιμάστε ξανά.

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

Για να αλλάξετε τη συχνότητα κάθε πλήκτρου στο πληκτρολόγιο πρέπει να αλλάξετε τον αριθμό στην εντολή Tone στον κωδικό Tone Keyboard (τον αριθμό που αλλάζετε με έντονη γραφή παρακάτω)

αν (cN == Υ HIGHΗΛΟ)

{τόνος (0, (16.35 * οκτάβα)); }

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

Για να αλλάξετε τα Beats/Rhythm, πρέπει να αλλάξετε τον κωδικό του Rhythm Section. Ομοίως με τον κωδικό Tone το μόνο που έχετε να κάνετε είναι να αλλάξετε τη συχνότητα (με έντονη ένδειξη παρακάτω) και θα αλλάξει ποια νότα θα παίξει. Μπορείτε να προσθέσετε άλλη καθυστέρηση και τόνο εάν θέλετε να προσθέσετε περισσότερες νότες στο ρυθμό.

if (pattern == 1) {tone (8, 55, sensorHalf);

καθυστέρηση (sensorValue)?

τόνος (8, 58,27, αισθητήρας Τέταρτος)

καθυστέρηση (sensorHalf)?

τόνος (8, 58,27, αισθητήρας Τέταρτος)

καθυστέρηση (sensorHalf)? }

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

Βήμα 4: Δημιουργία του τελικού προϊόντος

Δημιουργία του Τελικού Προϊόντος
Δημιουργία του Τελικού Προϊόντος
Δημιουργία του Τελικού Προϊόντος
Δημιουργία του Τελικού Προϊόντος
Δημιουργία του Τελικού Προϊόντος
Δημιουργία του Τελικού Προϊόντος

Αυτό το βήμα είναι προαιρετικό, αλλά αν θέλετε να κάνετε αυτό που έκανα, θα πρέπει να κολλήσετε έναν πίνακα με τους δύο μικροελεγκτές. Το μόνο που έχετε να κάνετε είναι να αφαιρέσετε τα IC από τον πίνακα arduino και να τα κολλήσετε σε ένα κενό pcb (θα πρέπει να χρησιμοποιήσετε πρίζες). Τα μόνα επιπλέον πράγματα που πρέπει να κάνετε είναι να συνδέσετε ένα κρύσταλλο 16Mhz μεταξύ των ακίδων 9 και 10 σε κάθε IC. Πρέπει να χρησιμοποιήσετε ρυθμιστή 5V για να κατεβάσετε τα 9V από την μπαταρία για να τροφοδοτήσετε το κύκλωμα. Τοποθετήστε έναν πυκνωτή 47uF μεταξύ 5V και γείωσης για να διατηρήσετε την έξοδο σταθερή. Η γείωση είναι η ακίδα 8 και η 5V είναι η ακίδα 7 στο IC. Ανατρέξτε στο διάγραμμα Pinout για να δείτε ποιες ακίδες στο IC αντιστοιχούν στις ψηφιακές ακίδες. Κυρίως παίρνει μόνο το κύκλωμα στο breadboard και το μεταφέρει στο pcb. Η χρήση κεφαλίδων μπορεί να πάρει επιπλέον χρόνο για συγκόλληση, αλλά θα διευκολύνει την αντιμετώπιση προβλημάτων, οπότε θα σας συμβούλευα να τις χρησιμοποιήσετε. Για να δημιουργήσω τα πλήκτρα έβγαλα ένα παλιό πληκτρολόγιο παιχνιδιών και έβαλα τους διακόπτες τακ κάτω από κάθε πλήκτρο. Μόλις ολοκληρώσετε τη δημιουργία κάθε κομματιού, μπορείτε να δημιουργήσετε μια θήκη για αυτό. Έχω κολλήσει τα πάντα σε λίγο ξύλο, αλλά μπορείτε να το κάνετε να φαίνεται πολύ καλύτερο από το δικό μου αν το θέλετε.

Βήμα 5: Δοκιμάστε το

Image
Image

Τώρα μπορείτε να διασκεδάσετε με το νέο σας synth. Έχει μόνο πολυφωνία 1 νότας, ώστε να μπορείτε να παίξετε μόνο απλά τραγούδια, αλλά με το τμήμα ρυθμού ενεργοποιημένο μπορείτε να κάνετε μερικούς πραγματικά υπέροχους ήχους. Καλα να περνατε!

Συνιστάται: