Vrijdag de 13e muzikale cabine (3 / 4 stap)

Stap 3: Broncode


De volledige lijst van de broncode kan worden verkregen uit mijn Pastebin.com profiel, hier. Ik zal een aantal centrale concepten van de code voor die nieuwe Arduino ontwikkeling behandelen.

Tone Library

De bibliotheek van de Toon kan worden verkregen op Google-Code vanaf hier. Deze bibliotheek is ongelooflijk eenvoudig te gebruiken. Zodra we het zip-bestand uitgepakt naar de map van de bibliotheken in de hoofdmap van de Arduino IDE-installatie hebben, kunnen we beginnen met het spelen van tonen. Deze bibliotheek is eigenlijk ideaal voor dit project omdat het produceert, zoals veel elektronische apparaten, vierkant geluidsgolven die is wat ook werd geproduceerd in de originele NES-hardware. Neem een blik bij een snel voorbeeld. Aangezien we pins 12 en 13 gaan rechtstreeks op de luidspreker hebben, moeten we om te initialiseren met behulp van twee Toon objecten als,

 Tone tone1;<br>Tone tone2; 

vervolgens in de loop van onze Setup initialiseren we hen voor geluid met de volgende twee coderegels,

 tone1.begin(13);<br>tone2.begin(12); 

Nu, kunnen we gewoon noemen de methode play() op elk van de Toon objecten als,

 tone1.play(440,900); 

die in het bovenstaande geval zou spelen een 440 (de muzikale noot: A4) voor 900 milliseconden (ms). Om twee tonen tegelijkertijd te spelen is eenvoudig. Zoals van het schrijven van deze tutorial, nemen de methode play() integer waarde frequentie zo frequenties met breuken in hen, zoals B4 die eigenlijk 493.883 zal hz, moeten naar boven of naar beneden worden afgerond. De vorken van de methode play() , en de werkstroom blijft de volgende coderegel. Bijvoorbeeld de code,

 tone1.play(440,900); tone2.play(122,900);<br>delay(900);<br>tone1.play(622,900);<br>tone2.play(784,900);<br>delay(900); 

zal spelen de tonen 440hz en 122hz gelijktijdig voor 900ms en daarbij dus de Arduino onderbroken met de delay() functie voor 900ms. Onmiddellijk na, de tonen 622hz, en 784hz gelijktijdig worden gespeeld voor 900ms en de Arduino pauzes, nogmaals, voor 900ms tijdens het afspelen van de tonen.

De delay() is belangrijk om te onthouden als u de methode play() vorken. Een goed voorbeeld is tijdens een for() -lus. Als wij willen spelen van een Toon meerdere keren in een rij en niet de Arduino met delay() onderbreken, zal het geluid alsof het speelt de Toon wij slechts één keer geven!

Ook niet vergeten dat er veel verwijzingen die kunnen gemakkelijk online worden gevonden met een zoekmachine te vinden bij benadering frequenties van notities op een piano waarnaar kan worden verwezen terwijl het maken van projecten die tracks te horen. Voor ons liedje moet we niet over ongerust maken ze uitzoeken aangezien ik al heb gedaan die voor ons en zet ze in de C++-code. Als u wilt weergeven maar een klein voorbeeld, gebruiken we de volgende frequenties voor de vers-sectie.

 int part1[] = {740,494,587}; // 740hz (F#5), 494hz (B4), 587hz (D5)int part2[] = {659,466,554}; // 659hz (E5), 466hz (A#4), 554hz (C#5) 

De basfrequenties (er zijn slechts twee) zijn 122hz (~ B2) en 116hz (A #2). De bas duurt 3 noten, om hen tegelijk spelen, gebruiken we de aangepaste gedefinieerde playSection() functie in de C++-code.

Drukknop Code

De drukknop-code wordt een eenvoudige digitalRead() -functie gebruikt om te controleren op spanning komen door op de pin opgegeven. Het is in ons geval pin 2. Het hoeft niet een speciale bibliotheek van derden te gebruiken.

In onze Setup -functie moeten we initialiseren op de pin voor input en gebruik de volgende coderegel om dit te doen,

 pinMode(2, INPUT); 

Nu in onze loop gebeurtenisafhandeling looping functie, kunnen we gewoon neem een lezing van de spanning met de digitalRead() functie, als,

 digitalRead(2); 

Als de geretourneerde waarde gelijk is aan de constante voor hoogspanning (1), dan kunnen we beginnen afspelen van de muziek. Anders moet het terug zo laag (0).

Gerelateerde Artikelen

Vrijdag de 13e drinken

Vrijdag de 13e drinken

Voel je ongelukkig? Nog een datum voor Valentijnsdag? Nou de SuperTenders hebben een grote drankje je pad van met kruisen moet te maken dit weekend "purrfect:" Black Cat. Het is makkelijk te maken en heeft een echt lekkere zoete taart smaakStap
Friday the 13th - Jasons Girlfriend - SFX make-up Tutorial

Friday the 13th - Jasons Girlfriend - SFX make-up Tutorial

Het lijkt iets rechtstreeks van van vrijdag de 13e als Jason bananen is gegaan. Snelle en supersnelle make-up als je partner als Jason gaat.JOIN US OP INSTAGRAM EN PERISCOPE:www.ellimacs.comStap 1: Bekijk de video!Het lijkt iets rechtstreeks van van
Kat kak Fudge

Kat kak Fudge

dus als u op zoek bent naar een manier om mensen uit bruto op vrijdag de 13e of op Halloween, hier gaan ya.  Kat kak Fudge.Ook, Controleer Jessyratfink'sCat haar taart.Met deze combo van traktaties bent u zeker te zijn van de hit van derden.Stap 1: I
Shredder - Ninja Turtles

Shredder - Ninja Turtles

deze tutorial is gemaakt ongeveer twee jaar nadat ik de Shredder kostuum maakte.Bijna geen van de items zijn nog steeds intact.De helm was vernietigd, een stof die ik gebruikte was vernietigd.  De enige dingen om te overleven zijn de armor stukken, e
Jason Voorhees: Friday The 13th

Jason Voorhees: Friday The 13th

CH CH CH AH AH AH...AANSTAANDE VRIJDAG IS DE 13E! Ter ere van dat en iedereen is favoriete Slasher Mr. Voorhees, ik heb een gezicht-verf-look die zijn masker is gemaakt.#Alexandreafio om me te tonen uw recreations op twitter en instagram er is een vi
Muzikale computergebaseerde wekker

Muzikale computergebaseerde wekker

als een college student krijg ik niet genoeg slaap, mijn bed warm en comfortabel is, en ik niet houd van krijgend eruit in de ochtenden.Ik meestal - instellen zoals ik weet zeker dat velen van u als goed - doen een alarm (of twee) op mijn telefoon en
Muzikale Loom

Muzikale Loom

Maak een muzikale weefgetouw met een Makey Makey.Stap 1: Een Prototype maken We wilden het maken van een weefgetouw dat muziek maken zou zoals de shuttle elke thread warp aangeraakt. We wilden meer dan 5 werken draden... maar eerst moesten we testen
How to Build a 12x20 Cabin on a Budget

How to Build a 12x20 Cabin on a Budget

Bouwen van een hut zelf is veel zuiniger dan het kopen van een prefab opslag schuur. De kosten van materialen voor deze bouwstijl, met inbegrip van deuren en ramen, was ongeveer $2200, die ongeveer dezelfde prijs als de installatie zou zijn geweest o
Spookachtige peperkoek cabine

Spookachtige peperkoek cabine

Kerstmis mag niet een monopolie hebben op Peperkoekhuisjes. De kleur van peperkoek past mooi met de kleuren van Halloween, en er is genoeg snoep voor het verfraaien. Laten we een achtervolgd peperkoek cabine!Ingrediënten & materialen:Meel, melasse, s
Muzikale paars gekleurde nachtlampje

Muzikale paars gekleurde nachtlampje

Hallo iedereen. Vandaag zal ik u tonen hoe te maken van goedkoop aantrekkelijke muzikale paarse nachtlampje [mini audiosysteem + muziek geactiveerde licht + paarse nachtlampje]Stap 1: Dingen die u zult moeten maken dit nachtlampje Laten we beginnen m
Off-Grid Stealth cabine plannen

Off-Grid Stealth cabine plannen

Hebt u gedroomd van het hebben van uw eigen kleine off-grid-cabine, retraite of misschien een pension?Nou nu u kunt en dit ontwerp van de cabine is perfect voor plaatsen die hebben geen macht, septische en water verbindingen.Stealth cabine plannenDez
Muzikale beha

Muzikale beha

de muzikale beha speelt muziek bij aanraking!Gereedschap hiervoor:-Geleidende stof (de stof van de strechable)-Fusible Interfacing (dubbele en single sided - controleren van uw lokale weefsel-winkel)-kleine vernikkeld naai snaps-geleidende draad-schu
Maak een muzikale Bench

Maak een muzikale Bench

De muzikale Bench is een tentoonstelling die muziek maakt wanneer mensen aanraken, kussen of handen te houden. Het maakt gebruik van een micro-controller te detecteren veranderingen in verzet, via de koperen armleuningen, en speelt hoog of laag notit
Cabine stijl Bed Frame (vanaf 2 "x 4" s)

Cabine stijl Bed Frame (vanaf 2 "x 4" s)

Mijn zoon verplaatst in het bed van een grote jongen veel eerder dan gepland. Momenteel hebben we hem op een twin dag bed slapen, maar hij omdat de stoere kleine vent, die hij is, hij heeft weten te breken van de metalen spaken aan de kant van de muu