INHOUDSOPGAWE:
- Stap 1: Stap 1: Bou die kring
- Stap 2: Stap 2: Kode en verduideliking
- Stap 3: Stap 3: Videodemonstrasie
Video: Arduino -klavier met drukknopskakelaars: 3 stappe
2024 Outeur: John Day | [email protected]. Laas verander: 2024-01-30 07:25
Geskep deur: Haotian Ye
Oorsig
Dit is 'n klavierbord met agt drukknopskakelaars waarmee u een oktaaf (Do Re Mi Fa So La Si Do) kan speel, en met hierdie een oktaaf kan u 'n paar liedjies probeer speel waarvan u hou. Vir hierdie projek is daar 'n paar belangrike kennis wat u moet weet voordat u begin.
Eerstens moet ons die frekwensies van basnote van 'n klavier ken.
Die frekwensies word hieronder gelys:
Doen - 261Hz
Herhaling - 294 Hz
Mi - 329Hz
Fa - 349Hz
Dus - 392Hz
La - 440Hz
Si - 493Hz
Doen - 523Hz
Tweedens sal ek u wys hoe u die kring kan bou deur die onderdele te gebruik wat u by Lee's Electronic Store kan koop. Uiteindelik , sal ek die kode wat op die Arduino -bord opgelaai moet word, aanbied en verduidelik.
Onderdele wat u benodig:
Arduino Uno R3 (produk -ID: 10997)
USB A tot B -kabel M/M (produk -ID: 29861)
10K weerstand * 8 (produk -ID: 91516)
Verskillende kleure van klepskakelaar * 8 (produk -ID: 3124, 31242, 31243, 31245, 31246)
Mini luidspreker (produk -ID: 41680)
Broodbord (produk -ID: 106861)
Jumper Wires (Produk ID: 21801)
Stap 1: Stap 1: Bou die kring
Plaas eers al die drukknopskakelaars en mini -luidspreker een vir een op die broodbord en pas dit op een ry. Koppel dan die penne van elke drukknopskakelaar aan die grond. Koppel tweedens 10k weerstande tussen positiewe krag en die ander penne van elke drukknopskakelaar. Koppel hierdie kolom aan penne 2-9 op Arduino Board. Koppel ook die grond aan die grondpen en die positiewe krag op die 3.3v -pen op Arduino. Koppel laastens die mini -luidspreker aan die pen 10 op Arduino.
Stap 2: Stap 2: Kode en verduideliking
Die onderstaande kode is wat ek geskryf het
const int swart = 2;
const int wit = 3;
const int rooi = 4;
const int groen = 5;
const int blou = 6;
const int black2 = 7;
const int green2 = 8;
const int red2 = 9;
const int speaker = 10; // Koppel alle drukknopskakelaars en luidsprekers met die seinpenne van arduino
int frekwensie = {262, 294, 330, 349, 392, 440, 493, 523}; // skikking bevat alle frekwensies van een oktaaf
ongeldige opstelling () {
// plaas u opstellingskode hier om een keer te werk:
pinMode (swart, INVOER);
pinMode (wit, INVOER);
pinMode (rooi, INVOER);
pinMode (groen, INVOER);
pinMode (blou, INVOER);
pinMode (black2, INPUT);
pinMode (groen2, INVOER);
pinMode (rooi2, INVOER);
pinMode (luidspreker, UITGANG);
toon (spreker, 2000);
Serial.begin (9600);
}
leemte -lus () {
// plaas u hoofkode hier om herhaaldelik te werk:
if (digitalRead (black) == LOW) // as u op die "DO" drukknopskakelaar druk
{toon (luidspreker, frekwensie [0], 50);
vertraging (50);
noTone (spreker);}
anders as (digitalRead (white) == LOW) // as u op die "RE" drukknoppie skakelaar druk
{toon (luidspreker, frekwensie [1], 50);
vertraging (50);
noTone (spreker);}
anders as (digitalRead (rooi) == LOW) // as u op die "MI" drukknopskakelaar druk
{toon (spreker, frekwensie [2], 50);
vertraging (50);
noTone (spreker);}
anders as (digitalRead (groen) == LOW) // as u op die drukknoppie "FA" druk
{toon (luidspreker, frekwensie [3], 50);
vertraging (50);
noTone (spreker);}
anders as (digitalRead (blou) == LOW) // as u op die "SO" drukknoppie skakelaar druk
{toon (luidspreker, frekwensie [4], 50);
vertraging (50);
noTone (spreker);}
anders as (digitalRead (black2) == LOW) // as u op die drukknoppie "LA" druk
{toon (luidspreker, frekwensie [5], 50);
vertraging (50);
noTone (spreker);}
anders as (digitalRead (green2) == LOW) // as u op die "SI" drukknoppie skakelaar druk
{toon (spreker, frekwensie [6], 50);
vertraging (50);
noTone (spreker);}
anders as (digitalRead (red2) == LOW) // as u op die "DO" drukknoppie skakelaar druk
{toon (luidspreker, frekwensie [7], 50);
vertraging (50);
noTone (spreker);}
anders // as u niks druk nie
noTone (spreker);
}
Eerstens moet ons alle drukknopskakelaars en luidsprekers as die pen van 2 tot 10 op Arduino verklaar. Elke skakelaar verteenwoordig 'n noot. Gebruik dan een skikking om al die frekwensies binne te plaas. Vervolgens is die verklaring If and else wat ek gebruik om Arduino te laat weet watter drukknopskakelaar ek druk.
Koppel laastens u Arduino -kaart met u rekenaar of skootrekenaar met 'n usb A tot B -kabel. Voordat u u kode oplaai, moet u steeds die Arduino -sagteware aflaai en 'n standaardinstelling doen. Kies Tools -> Board -> Arduino/Genuino Uno; Dan moet ons die kommunikasiepoort kies wat gekoppel is aan die Arduino -bord. Kies Gereedskap -> Poort, en dan is die poortnaam ook gemerk "(Arduino/Genuino Uno)." Dan kan u die kode na die Arduino -bord laai.
Aanbeveel:
Hoe om 'n hommeltuig te maak met Arduino UNO - Maak 'n quadcopter met behulp van mikrokontroller: 8 stappe (met foto's)
Hoe om 'n hommeltuig te maak met Arduino UNO | Maak 'n quadcopter met behulp van mikrobeheerder: inleiding Besoek my Youtube -kanaal 'n Drone is 'n baie duur apparaat (produk) om te koop. In hierdie pos gaan ek bespreek hoe ek dit goedkoop kan maak ?? En hoe kan u u eie goedkoop maak teen goedkoop pryse … In Indië is al die materiale (motors, ESC's
PWM Met ESP32 - Dim LED met PWM op ESP 32 Met Arduino IDE: 6 stappe
PWM Met ESP32 | Dim LED met PWM op ESP 32 Met Arduino IDE: In hierdie instruksies sal ons sien hoe om PWM seine te genereer met ESP32 met behulp van Arduino IDE & PWM word basies gebruik om analoog uitset van enige MCU te genereer en die analoog uitset kan tussen 0V en 3.3V wees (in die geval van esp32) & van
DIY slim weegskaal met wekker (met Wi-Fi, ESP8266, Arduino IDE en Adafruit.io): 10 stappe (met foto's)
DIY Smart Scale With Alarm Clock (met Wi-Fi, ESP8266, Arduino IDE en Adafruit.io): In my vorige projek het ek 'n slim badkamerskaal met Wi-Fi ontwikkel. Dit kan die gebruiker se gewig meet, plaaslik vertoon en dit na die wolk stuur. U kan meer inligting hieroor kry op die onderstaande skakel: https: //www.instructables.com/id/Wi-Fi-Smart-Scale-wi
Maak 'n horlosie met M5stick C Met Arduino IDE - RTC-intydse klok met M5stack M5stick-C: 4 stappe
Maak 'n horlosie met M5stick C Met Arduino IDE | RTC Real Time Clock Met M5stack M5stick-C: Hallo ouens in hierdie instruksies, ons sal leer hoe om 'n horlosie te maak met 'n m5stick-C ontwikkelbord van m5stack met behulp van Arduino IDE. So m5stick sal datum, tyd en amp vertoon; week van die maand op die skerm
Draadlose afstandsbediening met 2,4 GHz NRF24L01 -module met Arduino - Nrf24l01 4 -kanaals / 6 -kanaals sender -ontvanger voor quadcopter - Rc Helikopter - Rc -vliegtuig met Arduino: 5 stappe (met foto's)
Draadlose afstandsbediening met 2,4 GHz NRF24L01 -module met Arduino | Nrf24l01 4 -kanaals / 6 -kanaals sender -ontvanger voor quadcopter | Rc Helikopter | Rc -vliegtuig met Arduino: om 'n Rc -motor te bestuur | Quadcopter | Drone | RC -vliegtuig | RC -boot, ons het altyd 'n ontvanger en sender nodig, veronderstel dat ons vir RC QUADCOPTER 'n 6 -kanaals sender en ontvanger nodig het en dat die tipe TX en RX te duur is, so ons maak een op ons