99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

自制電子鼓DIY圖解

454398 ? 來源:wv ? 2019-10-25 10:36 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

步驟1:需要的東西

* ELECTRONIC STUFF

Arduino UNO R3

SD卡屏蔽層

USB電纜

#5 V適配器

#Micro SD卡

#壓電換能器(又名壓電磁盤)

#帶狀導(dǎo)線

#單芯屏蔽線。

#連接線。

#并行PCB。

#2個接觸跳線。

#3.5mm音頻插孔(公n母)

電阻-1M和10K(每個約10個)

*硬件雜物

#PVC管(3.5厘米,理想厚度)-3米

#PVC T型接頭

彎頭

聯(lián)軸器

塞子

#Thermocoal(實厚)。

#橡膠樣材質(zhì)(誠實地不要使用它的花哨名稱。:)

任何具有求和剛度和彈跳力的材料。我是從鞋類制造商那里購得的。它們被用來制造鞋子的靈魂。 )#Rexin(這種材料將是人造膜。我使用了類似材料的黑布

.u可以使用任何使其看起來很酷的東西.u甚至可以使用皮革

。這不會影響方式你的鼓聲。)??雌饋砗芸岬臇|西,讓你放進去。(我用了一個舊的筆記本電腦

cooler-pad.n里面的房間看起來很棒。)

*需要工具

#焊接設(shè)備。

#切割鉗

#剝線鉗

#剪刀(重型物品)

#Thermocol切割器

#鋼鋸

#測量

#Fevicol SR&SH(印度木材和制鞋業(yè)用膠水制造商。您可以在您所在的國家或地區(qū)使用相同的膠水:P)

#絕緣膠帶。#Ducttape或大提琴膠帶或美紋紙膠帶。#砂紙(金屬的顆粒大小各不相同。)#M密封(可模制成任何尺寸和棒狀的材料) )##噴涂漆。(您的選擇。我用黑色。)

*需要軟件。

#Arduino編程環(huán)境。

#SOX (命令行格式轉(zhuǎn)換器

#FL Studio。

*需要其他填充物。

#一臺用于對Arduino編程的PC。

#一個用于聽到聲音的放大器。

步驟2:工作

工作

在此步驟中,嘗試盡可能簡單地解釋我們的E DRUM(或KIDU

)的工作。我只簡單地談?wù)勚谱髅總€子系統(tǒng)的步驟,然后在下面不詳細介紹它們步驟。

由于我們正在處理電子鼓,因此需要將機械脈沖(在鼓上播放)覆蓋到電信號中。此任務(wù)由壓電圓盤完成。我們制造的鼓將包含1個這樣的壓電傳感器。

當在磁盤上施加機械壓力時,會產(chǎn)生電信號,其強度與壓力成正比。

發(fā)送到Arduino模擬引腳(通過下拉電阻,稍后再解釋)。由于UNO上只有6個anaog引腳。,將使用的鼓和的數(shù)量限制為6個。

我們使用數(shù)字引腳觸發(fā)底鼓和扼流圈。

arduino還通過SPI引腳連接到SD卡屏蔽層。 。

(即引腳13到10)。

現(xiàn)在程序。如您所知,arduino的模擬引腳將其模擬輸入轉(zhuǎn)換為0到1024之間的值。這樣,如果該值超過特定的畫眉保持值,則從sd卡中提取相應(yīng)的

音頻文件,然后通過啟用PWM的引腳對其進行播放。說起來容易做起來難。如果我們需要不使用任何音頻解碼器直接播放SD卡中的音頻文件,則需要克服一些障礙。(稍后將對此進行詳細說明。)

KIDU的另一個優(yōu)勢是因為它不需要任何控制按鈕。

我已經(jīng)對其進行了編程,以便可以使用鼓本身來

選擇擊鼓風(fēng)格。

步驟3:框架

制作框架

我不太擅長機械領(lǐng)域的東西。.,但是我盡力了。

用于制造鼓和結(jié)構(gòu)或框架。它使用了某些材料(不是最好的材料),但是我使用它們是因為它們易于使用,并且非常便宜且輕巧。

但是,這一步非常簡單。任何一個具有低成像性的材料都可以制造。

請遵循結(jié)構(gòu)框架圖。

為了制作KIDU的框架,我使用了直徑為3.5厘米的PVC管。

需要大約3米長我們需要將這3米長的pvc轉(zhuǎn)換成如圖所示的結(jié)構(gòu)。

我可以給您精確測量框架部件的數(shù)量。但是

說實話。,我從來沒有已經(jīng)將它們切成確切的長度。我只剪了1米的pVC,并檢查了這是否是我需要的長度。我認為我測量到的它太多了,并做了一點標記。我測量了我發(fā)現(xiàn)的高度

玩起來很舒服。我測量了4個這樣的支柱。他通過這種反復(fù)試驗的方法來確定所有組件的長度。但是令人驚訝的是,沒有浪費任何東西。因為框架的所有組件都很小。并且在那里有很多連接。所以我使用了幾乎上升了2.7米。剩下的很少了。

這是我使用的方法(有趣的方式)。

但是對于那些不喜歡太多有趣的人,請在另一張圖上測量并標記。

命名框架組件。

這很重要,因為,當我們將它們組裝在一起時,這非常有用。如果我們有很多組件并且沒有辦法知道哪個會很混亂。因此,我組成了一個結(jié)構(gòu)

框架裝配圖。每個組件都有一個名稱。

BL2-后左2

BL1-后左1

SL1-后左1

SL2-側(cè)向左2

FL2-前向左2

FL1-前向左1

GL-左向

ML-中向左

M-中向

MR-中向右

GR -GOINT RIGHT

FR1 -FRONT RIGHT 1

FR2 -FRONT RIGHT 2

SR1 -SIDE RIGHT 1

SR2 -SIDE RIGHT 2

BR1 -BA CK RIGHT 1

BR2 -BACK RIGHT 2

(我的關(guān)節(jié)拼寫錯誤。但是我很想去:P)

現(xiàn)在將整個東西連接在一起,沒有鼓。 》使用噴漆進行噴涂。

提示:#在管道內(nèi)部和外側(cè)命名組件。

以防被油漆覆蓋。

#噴涂時請記住至少要保持噴涂狀態(tài)從

workpice離開25厘米。在噴涂時一定要移動,以獲得良好的光潔度。

#將工件放在報紙上,以防止油漆破壞其他任何東西。

步驟4:制作鼓

制作鼓

我不太擅長機械方面的事情。。但是我盡力了。

用于制造鼓和結(jié)構(gòu)或框架。它使用了一些材料

(不是最好的材料)但是我用它們是因為它們易于使用,并且非常便宜且輕巧。

如圖所示,該鼓共有3層。大部分鼓都充滿了我使用的是Thermocol(更好的剛性)。我對標準鼓組的鼓尺寸進行了搜索。然后在大塊的Thermocol板上切成四個直徑的圓。如下圖所示。切下直徑相同的rexin和有彈性的材料,如圖所示?,F(xiàn)在,在Thermocol的中心切出一個圓柱狀的凹槽,使T結(jié)的tail部分緊緊地插入孔中?,F(xiàn)在在Thermocol的t結(jié)部分附近標記4個位置。(請注意,這只是為了獲得更大的強度。即使鼓手敲鼓,鼓也會掉落。

困難。)。

現(xiàn)在,您已經(jīng)知道連接處在鼓上了,

移除結(jié)點?,F(xiàn)在使用砂紙。,將Thermocol的側(cè)面

。這是為了消除切割時可能產(chǎn)生的任何變形。

沿軸在熱煤上形成一個凹槽。(軸是pvc管所在的假想線

。)

現(xiàn)在申請fevico l(SH級)位于熱煤

和T形接合處的樹叢壁上。請勿使用SR級coz,因為它將熔化熱可可膠。(fevicol是印度膠水制造商的名稱.ill也把圖片放在照片上。您可以在您所在的國家/地區(qū)使用wat。)然后用一根細繩子將T結(jié)和Thermocol綁在一起。將細繩串成一串,穿過我們在Thermocol上切開的小樹林?,F(xiàn)在將其綁緊T結(jié)上的硬結(jié)。在串上接觸

SR fevicol時應(yīng)使其碰到PVC T結(jié)(不要在Thermocol上弄破SR。)SR會使PVC融化。 》然后將Thermocol固定在t結(jié)上。

現(xiàn)在拿一個壓電盤,用2股帶狀導(dǎo)線焊接(從10股帶狀導(dǎo)線的2條)

確保用絕緣膠帶將兩根引線絕緣?,F(xiàn)在將另一端的電線焊接到3.5mm音頻插孔上,用一塊小的塑料片擰緊插孔,并確保電線的長度等于半徑

感光鼓。(我們不希望任何多余的電線從感光鼓中伸出。)

使用SR膠水,將壓電磁盤粘在我們先前切出的

bolson材料的中心。絕緣膠帶粘電線a

然后將磁盤放在圓上?,F(xiàn)在將包含壓電磁盤

的一側(cè)粘貼到thermocol上。確保3.5插孔正確放置??梢詮奈牡耐饷娌迦?/p>

(僅使用SH粘附在Thermocol上。)

現(xiàn)在使用SR膠將毒素粘附在有彈性的材料上。留待干燥。

現(xiàn)在用于噴涂感光鼓。我使用了噴漆(油漆-a-can)。問題是您不能直接在Thermocol上使用此涂料。因為它會產(chǎn)生與SR膠相同的效果。它會熔化整個物體。在將其噴涂之前,先在其頂部涂上膠帶。

我還先涂了一層新聞紙,然后涂了一層膠帶。

(不是必需的)。

涂上一層油漆??梢詮墓纳弦?5厘米遠,然后不斷地噴灑,以獲得良好的光潔度。否則,它可能會不均勻。

晾干。5分鐘后重復(fù)。

涵蓋了鼓的制作。但是制作making和踏板

將在下一步驟中進行說明。一個問題是我無法拍攝br和腳踏板的制作。我也沒有一刻就把它們和我在一起。但是生病了我要盡快把它們照相并上傳。

立即加載步驟。

提示:#每當您使用以前使用過的溶劑(如fevicol SH或SR)時,始終在樣品上進行測試

》將其應(yīng)用到原件上。

(我想強調(diào)這一點,是因為我在Thermocol上使用

SR浪費了1個大鼓。整件事融化成guie黏糊糊的泥漿:()

#插孔(固定壓電),請確保插孔

位于鼓的易于插入的區(qū)域。(您不希望插孔位于鼓的左側(cè)或右側(cè)。因為可能很難另一個鼓側(cè)面出現(xiàn)。

#始終使用總和標記來測量和標記鼓上的參數(shù)。

#我們將一起削減所有4個鼓的重要性。 。

因此可以輕松地標記出它們屬于哪個鼓及其軸。 》#在粘貼任何東西之前,請始終檢查其在框架上的狀態(tài)。

注意:-根據(jù)我搜索過的網(wǎng)站的標準鼓尺寸。

18 x 22英寸低音鼓

9 x 12和10 x 13英寸架子鼓

16 x 16英寸落地鼓

5.5 x 14英寸小軍鼓

步驟5:制作控制臺

制作控制臺。

基本上是將所有回路放置在一個漂亮的盒子中。

整齊地拼湊一種方法,可以與

在控制臺上,我使用了一個舊的USB供電的筆記本電腦冷卻器墊。我從墊子上取下了

風(fēng)扇,并用一小塊硬紙板粘了起來。將

SD卡護罩連接到arduino和將其擰緊到硬紙板上。

另一個重要的電路是下拉電阻。

如前所述,壓電磁盤產(chǎn)生的電信號對應(yīng)于施加在紙板上的壓力。當我們將鼓與壓電

內(nèi)部粘在一起時,即使不彈鼓也會產(chǎn)生信號。因此要克服這個問題,我們放下了下拉電阻(1M?1.3M )

在壓電圓盤的帶電和接地引線之間。

我們可以將其放在橡皮泥中。但是我決定將所需的所有

下拉電阻器放到一個PCB上,然后將其放置在控制臺中。

此配置使必要時更容易進行任何維護。

電路圖非常簡單。

我將6個母跳線連接到并行PCB并使用了6個電阻器然后用掛鉤線將所有跳線公插針的1個引線短路。然后從每個跳線插銷中引出帶電引線和短路的引線1個(用于GND)并分別焊接到Ribbonwire的1端。我將一小部分連接線連接到Ribbon Line的末端(以使其更易于連接到Arduino)。并連接這些線。與模擬p將這些銷釘

暴露在外部,以便我們從外部進行連接。

接下來,將輸出音頻插座(3.5毫米母音頻)連接到控制臺。我們將2股帶狀導(dǎo)線焊接到地面并使其插在插座上,并使其另一端連接到連接導(dǎo)線。(以便于輕松連接到arduino。)現(xiàn)在在控制臺上再打一個孔以取下孔

我使用USB電纜對arduino進行編程以為該設(shè)備供電。

這樣,我可以使用同一根電纜為該設(shè)備供電并對其進行編程。我將USB電纜連接到一個用于供電的5V USB適配器。

這也減輕了控制臺的重量,這是因為沉重的變壓器實現(xiàn)了降壓和更高的效率。

接下來是電纜系統(tǒng)。我使用的電纜系統(tǒng)是由

》單芯屏蔽罩,以獲得最佳音質(zhì)。每個鼓,cy和踏板都需要將電纜連接到控制臺。切開約1.3米的屏蔽罩先將焊絲的一端焊接到3.5mm的公頭插孔上,另一端焊接到跳線的母頭部分上。

步驟6:準備SD卡

準備SD卡。

對我來說,這是最困難,最耗時的步驟。但請上傳所有音頻文件的所有鏈接我已經(jīng)準備好了,以便那些

很難遵循的人可以使用這些文件并跳過此步驟。

但是我必須警告您,ull會錯過很多樂趣:)。

link ishttp ://www.4shared.com/rar/AoDU14Vy/KIDU_files.html

在觸摸sd卡之前,我們需要選擇我們希望鼓

聽起來像的聲音。為此,我使用了圖像行FL studio以Wave格式制作每個

Drum樣本。對于不熟悉Fl Studio的用戶,您可以簡單地在Google上搜索并下載Drum樣本,即使這樣也太多了。 ,請繼續(xù)使用我也使用過的wav文件的鏈接:)。

一旦您決定了聲音,想聽。讓我們開始轉(zhuǎn)換。

正如我在工作中告訴您的那樣,如果沒有專用的音頻解碼器,播放音頻格式并不容易。如果我們有WAV防護罩,那本來是

easier。現(xiàn)在可以直接從sd卡播放音頻文件。我們使用稱為SimpleSDAudio.h的arduino庫。為此,庫要運行,我們需要.RAW中的音頻文件。格式

和8.3命名格式的文件名,都存在于SD卡的根目錄中。

為了將wave文件轉(zhuǎn)換為原始文件,我找不到任何文件轉(zhuǎn)換器

支持wav到raw的軟件。(總視頻轉(zhuǎn)換器也不行。)

所以我使用了一個名為SOX的命令行轉(zhuǎn)換器。您可以將Audacity用作GUI。但是我使用了命令行技術(shù)。

首先,您需要安裝SOX?,F(xiàn)在將所有需要的文件

轉(zhuǎn)換到包含文件SOX.exe的相同目錄。

現(xiàn)在打開命令提示符,并將其定向到與SOX.exe相同的目錄

(或在其中創(chuàng)建一個記事本文件在目錄中,鍵入command.com并將其保存為任何內(nèi)容.bat。如果您打開此文件,則將打開命令提示符,并指向相同的目錄。)現(xiàn)在鍵入以下命令。

cd%?dp0

mkdir轉(zhuǎn)換為sox input.wav --norm = -1 -e unsigned-integer -b 8 -r 62500 -c 1 -t raw“ converted output.raw”

暫停

在上面的命令中將input.wav替換為您使用的文件名。將

&output.raw替換為8.3文件名。(8.3 simpy表示8個字母或更少的名稱,后跟

a‘ 。’和3個字母的格式(例如numb.mp3)。因此,如果您選擇了要轉(zhuǎn)換的軍鼓聲音。

type。

cd%?dp0

mkdir轉(zhuǎn)換的是sox snare.wav- -norm = -1 -e無符號整數(shù)-b 8 -r 62500 -c 1 -t原始“ converted 1_snr.raw”

暫停

正如我之前提到的,沒有LCD顯示。所有選擇KIDU還敘述了

樣式和其他必要的東西。因此,所有這些

音頻文件也需要轉(zhuǎn)換并傳輸?shù)絊D卡。

對于這些音頻文件我還使用了FL Studio的語音合成器功能。您可以使用任何軟件并以Wave格式獲取語音音頻。

然后將其轉(zhuǎn)換為原始SOX。我還將上傳n個鏈接這些音頻文件?!?/p>

命名文件。

這樣做是為了使編程更容易一些。系統(tǒng)地記錄您所做的事情。

命名法

FORMAT _ .raw

我擁有的名稱二手:用于樣式計數(shù)1

1_snr.raw

1_tom1.raw

1_tom2.raw

1_ft.raw

1_cy.raw

1_kick.raw

1_ohh.raw

1_chh.raw

對于樣式計數(shù)2,將上述所有第一個字母替換為2,以此類推,以替換任意數(shù)量的樣式。

語音文件可以命名。

您可以使用原始格式的文件。我們可以將其傳輸?shù)絊D卡。為此,您可以使用內(nèi)置格式化程序中的Windows,但是我建議使用SD格式化程序。(請勿進行快速格式化。) 2GB格式的SD卡

為FAT。其他所有格式均為FAT32。該庫支持兩個文件系統(tǒng)

現(xiàn)在將其從PC中取出,然后將其插入SD卡護罩中。

注意:在任何操作系統(tǒng)(MSDOS除外)上運行的計算機將不能

播放這些RAW文件。擔心它在arduino中不能正常播放。如果您不相信它的真實性,您可以將這些文件轉(zhuǎn)換回wav或mp3并在您的計算機中播放。

步驟7:源代碼

//使用的變量和常量。

int snare;

int tom1;

int tom2;

int floortom;

int cymbal;

int highhat;

int stylecount = 0;

int select = 0;

int snarecount;

int tom1choose;

//////////////////////

const int snarepin = A0;

const int tom1pin = A1;

const int tom2pin = A2;

const int floortompin = A3;

const int cymbalpin = A4;

const int highhatpin = A5;

#include

void setup()

{

串行.begin(9600);

SdPlay.setSDCSPin(10);//芯片選擇

SdPlay.init(SSDA_MODE_FULLRATE | SSDA_MODE_MONO | SSDA_MODE_AUTOWORKER);

Serial.println(“ sd ready”);

SdPlay.setFile(“ startup.raw”);//播放啟動音。

SdPlay.play();

}

void loop()

{

//////////////////////////////////讀取模擬引腳

snarecount = analogRead(snarepin);

tom1choose = analogRead(tom1pin);

tom2 = AnalogRead(tom2pin);

floortom = analogRead(floortompin);

ym = analogRead(cymbalpin);

highhat = analogRead(highhatpin);

/////////////////////////////////drum樣式選擇。

if(snarecount》 100)

{

SdPlay.setFile(“ slctdrm.raw“);//KIDU說“選擇擊鼓風(fēng)格!”

SdPlay.play();

stylecount = stylecount + 1;

}

if(stylecount》 6)

{

stylecount = 1;

}

///////////////////////////////////////play鼓風(fēng)格的名稱。

如果(stylecount == 1)

{

SdPlay.setFile(“ 1_stdstl.raw”);//KIDU說“已選擇標準鼓組!”

SdPlay.play();

}

如果(stylecount == 2)

{

SdPlay.setFile(“ 2_afrcon.raw” );//KIDU說“選擇了非洲剛果風(fēng)格!”

SdPlay.play();

}

if(stylecount == 3)

{

SdPlay.setFile(“ 3_hiho.raw “);//KIDU說“選擇了嘻哈風(fēng)格”

SdPlay.play();

}

if(stylecount == 4)

{

SdPlay.setFile(“ 4_indian.raw”);//KIDU說“選擇了印度風(fēng)格”

SdPlay.play();

}

如果(stylecount == 5)

{

SdPlay.setFile(“ 5_funny.raw”);//KIDU說“選擇了有趣的聲音”

SdPlay.play();

}

if(stylecount == 6)

{

SdPlay.setFile(“ 6_demo.raw”);//播放DEMO。

SdPlay.play();

}

///////____________________退出如果選擇(tom1choose》 50)

{

SdPlay.setFile(“ selected.raw”);

SdPlay.play();

select =選擇+ 1;結(jié)果,},點擊Serial.println( “stylecount =”);結(jié)果,Serial.println(stylecount);結(jié)果,Serial.println( “選擇=”);結(jié)果,Serial.println (選擇);

同時(選擇== 1)

{

/////////////////////////////////////將變量重新定義為鼓聲觸發(fā)器。

snare = analogRead(snarepin);

tom1 = analogRead(tom1pin);

tom2 = analogRead(tom2pin);

floortom = analogRead(floortompin);

ym = analogRead(cymbalpin);

highhat = analogRead(highhatpin);

if(snare》 50 && stylecount == 1)

{

SdPlay.setFile(“ 1_snare.raw”);

SdPlay.play();

Serial.println(“ snare”);

}

如果(tom1》 50 && stylecount = = 1)

{

SdPlay.setFile(“ 1_tom1.raw”);

SdPlay.play();

Serial.println(“ tom1”);

}

if(tom2》 50 && stylecount == 1)

{

SdPlay.setFile(“ 1_tom2.raw”);

SdPlay.play();

Serial.println(“ tom2”);

}

如果(floortom》 50 && stylecount == 1)

{

SdPlay.setFile(“ 1_ft.raw”);

SdPlay.play();

Serial.println(“ floortom”);

}

如果(cymbal》 50 && stylecount == 1)

{

SdPlay.setFile(“ 1_cy.raw”);

SdPlay.play();

Serial.println(“ cymbal”);

}

如果(highhat》 50 && stylecount == 1)

{

SdPlay.setFile(“ 1_ohh.raw”);

SdPlay.play();

串行。 println(“ open highhat”);

}

//////////////////////////////////////////style 2

if(snare》 50 && stylecount == 2)

{

SdPlay.setFile(“ 2_snare.raw”);

SdPlay.play ();

Serial.println(“ 2snare”);

}

如果(tom1》 50 && stylecount == 2)

{

SdPlay.setFile(“ 2_tom1.raw”) ;

SdPlay.play();

Serial.println(“ 2tom1”);

}

如果(tom2》 50 && stylecount == 2)

{

SdPlay.setFile(“ 2_tom2.raw”);

SdPlay.play();

Serial.println(“ 2tom2”);

}

如果(floortom》 50 && stylecount == 2)

{

SdPlay.setFil e(“ 2_ft.raw”);

SdPlay.play();

Serial.println(“ 2floortom”);

}

如果(cymbal》 50 && stylecount == 2)

{

SdPlay.setFile(“ 2_cy.raw”);

SdPlay.play();

Serial.println(“ 2cymbal”);

}

if(highhat》 50 && stylecount == 2)

{

SdPlay.setFile(“ 2_ohh.raw”);

SdPlay.play();

Serial.println(“ 2open highhat”);

}

//////////////////////////////////////////////style3

if(snare》 50 && stylecount == 3)

{

SdPlay.setFile(“ 3_snare.raw”);

SdPlay.play();

Serial.println( “ 3snare”);

}

如果(tom1》 50 && stylecount == 3)

{

SdPlay.setFile(“ 3_tom1.raw”);

SdPlay.play();

Serial.println(“ 3tom1”);

}

如果(tom2》 50 && stylecount == 3)

{

SdPlay.setFile(“ 3_tom2.raw”) ;

SdPlay.play();

Serial.println(“ 3tom2”);

}

if(floortom》 50 && stylecount == 3)

{

SdPlay.setFile (“ 3_ft.raw”);

SdPlay.play();

Serial.println(“ 3floortom”);

}

如果(cymbal》 50 && stylecount == 3)

{

SdPlay.setFile(“ 3_cy.raw”) ;

SdPlay.play();

Serial.println(“ 3cymbal”);

}

if(highhat》 50 && stylecount == 3)

{

SdPlay.setFile (“ 3_ohh.raw”);

SdPlay.play();

Serial.println(“ 3open highhat”);

}

//////////////////////////////////////////印度風(fēng)格

如果(snare》 50 && stylecount == 4)

{

SdPlay.setFile(“ 4_snare.raw”);

SdPlay.play();

Serial.println(“ 4snare”);

}

如果(tom1》 50 && stylecount == 4 )

{

SdPlay.setFile(“ 4_tom1.raw”);

SdPlay.play();

Serial.println(“ 4tom1”);

}

如果(tom2》 50 && stylecount == 4)

{

SdPlay.setFile(“ 4_tom2.raw”);

SdPlay.play();

Serial.println(“ 4tom2”);

}

if(floortom》 50 && stylecount == 4)

{

SdPlay.setFile(“ 4_ft.raw”);

SdPlay.play();

串行。 println(“ 4floortom”);

}

if(cymbal》 50 && stylecount == 4)

{

SdPlay.setFile(“ 4_cy.raw”);

SdPlay.play( );

Serial.println(“ 4cymbal”);

}

if(highhat》 50 && stylecount == 4)

{

SdPlay.setFile(“ 4_ohh.raw”);

SdPlay.play ();

Serial.println(“ 4open highhat”);

}

////////////STYLE 5 FUNNY

if(snare》 50 && stylecount == 5)

{

SdPlay.setFile(“ 5_snare.raw”);

SdPlay.play();

Serial.println(“ 5snare”);

}

如果( tom1》 50 && stylecount == 5)

{

SdPlay.setFile(“ 5_tom1.raw”);

SdPlay.play();

Serial.println(“ 5tom1”);

}

如果(tom2》 50 && stylecount == 5)

{

SdPlay.setFile(“ 5_tom2.raw”);

SdPlay.play();

串行.println(“ 5tom2”);

}

如果(floortom》 50 && stylecount == 5)

{

SdPlay.setFile(“ 5_ft.raw”);

SdPlay.play ();

Serial.println(“ 5floortom”);

}

if(cymbal》 50 && stylecount == 5)

{

SdPlay.setFile(“ 5_cy.raw”) ;

SdPlay.play();

Serial.println(“ 5cymbal”);

}

if(highhat》 50 && stylecount == 5)

{

SdPlay.setFile (“ 5_ohh.raw”);

SdPlay.play();

Serial.println(“ 5open highhat”);

}

如果(stylecount == 6)

{

SdPlay.setFile(“ demo.raw”);

SdPlay.play();

}

}

}

步驟8:源代碼工作

源代碼工作

我們用來播放sd卡音頻的庫是

SimpleSDAudio.h,其詳細信息已經(jīng)詳細說明了準備SD卡的主干。

現(xiàn)在在草圖中。我僅具有4個鼓和一個a片的程序。

因為我還沒有講解腳踏板的制作方法?!段視M我最大的努力盡快將其上傳。但是我已經(jīng)轉(zhuǎn)換了所有聲音(每個鼓風(fēng)格8個組件),即4個鼓,1個mb片,打開高帽和關(guān)閉高帽的聲音。

如前所述,該程序也使用鼓來觸發(fā)。

對我來說這是一個很大的挑戰(zhàn)。但是我最終做到了。

您可能會在源代碼中注意到,我已經(jīng)進行了兩次模擬讀取。

每次使用2個具有不同變量名稱的鼓。

第一次。我們使用小鼓和tom1鼓來選擇鼓風(fēng)格。

小鼓是用作樣式計數(shù)。計數(shù)從1到6

,并從1重復(fù)n。您可以添加與您使用的SD卡大小一樣多的樣式。您只需上傳所需的所有聲音即可。

還有另一種方法可以遍歷下一組模擬讀數(shù)。 br》這是選擇計數(shù)。如果您已經(jīng)用小鼓確定了計數(shù),我們將通過tom1鼓對其進行確認。一旦tom1鼓被擊中,

它將開始選擇計數(shù)。選擇計數(shù)為1(即第一次敲擊tom1鼓),鼓觸發(fā)循環(huán)開始。

鼓觸發(fā)循環(huán)非常簡單。如果模擬讀數(shù)超過一個保持力,KIDU將發(fā)出相應(yīng)的聲音。循環(huán)不斷。

例如:如果Analogread值》 thrushold且stylecount == 1

,則播放小鼓的音頻文件1_snare.raw。

編例如:

如果(snare》 50 && stylecount == 1)

{

SdPlay.setFile(“ 1_snare.raw”);

SdPlay.play();

Serial.println(“ snare”) ;

}

現(xiàn)在該程序涉及kick ahd高帽游戲,它并不難。

我們要做的就是包括digita部分l讀取按鈕。

我們需要使用一個簡單的單脈沖開關(guān)和一個反跳功能來進行踢動。

反跳功能在arduino編程環(huán)境和高禮帽的示例中都存在。 ,則去抖和切換部分相同。

if循環(huán)在打開和關(guān)閉時都會有一個額外的條件。

ie

如果(扼流圈==高&&高》 thrushold && stylecount == 1)

{

SdPlay.setFile(“ 1_chh.raw”);

SdPlay.play();

Serial.println(“ closed highhat”);

}

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • pcb
    pcb
    +關(guān)注

    關(guān)注

    4368

    文章

    23492

    瀏覽量

    409728
  • Arduino
    +關(guān)注

    關(guān)注

    190

    文章

    6498

    瀏覽量

    192182
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    激光焊接技術(shù)在焊接篩的工藝應(yīng)用

    作為工業(yè)篩分設(shè)備的核心部件,其結(jié)構(gòu)強度、密封性及耐腐蝕性直接影響設(shè)備性能。激光焊接技術(shù)憑借高能量密度、精準熱輸入及自動化優(yōu)勢,逐漸成為篩制造領(lǐng)域的關(guān)鍵工藝。下面來看看激光焊接技術(shù)在焊接篩
    的頭像 發(fā)表于 07-02 17:02 ?117次閱讀
    激光焊接技術(shù)在焊接篩<b class='flag-5'>鼓</b>的工藝應(yīng)用

    圖解單片機功能與應(yīng)用(完整版)

    從基礎(chǔ)知識的介紹出發(fā),圖文并茂,直觀、系統(tǒng)地介紹了單片機的內(nèi)部結(jié)構(gòu)、工作原理和應(yīng)用技巧。全書分為10章,內(nèi)容包括51單片機編程資源圖解、51單片機指令系統(tǒng)圖解、匯編語言程序設(shè)計圖解、輸入/輸出
    發(fā)表于 06-16 16:52

    漫畫圖解 電感器 抗干擾元器件指南(全彩PDF版)

    漫畫圖解電感基礎(chǔ)知識(高清PDF) 內(nèi)容:很形象的漫畫和語言圖解關(guān)于電感器的入門基礎(chǔ)知識,讓電子初學(xué)者也能輕松的看懂電子電路。 純分享貼,有需要可以直接下載附件獲取完整資料!
    發(fā)表于 05-13 15:49

    圖解電子元器件知識大全

    介紹: 電壓.電流.電阻器.電容器.電感器.二極管.三極管.電位器.穩(wěn)壓塊.保險管.集成塊 IC 無論是硬件 DIY 愛好者還是維修技術(shù)人員,你能夠說出主板、聲卡等配件上那些小元件叫做什么,又有
    發(fā)表于 04-23 15:19

    PCB封裝圖解

    PCB封裝圖解——詳細介紹了各種封裝的具體參數(shù),并介紹了如何進行封裝制作 純分享貼,有需要可以直接下載附件獲取文檔! (如果內(nèi)容有幫助可以關(guān)注、點贊、評論支持一下哦~)
    發(fā)表于 04-22 13:44

    基于Arduino的MIDI架子創(chuàng)建

    我一直夢想著在家里有一套架子,但空間、噪音和成本一直是挑戰(zhàn)。所以,我決定制作自己的緊湊型桌面MIDI組,它由USB供電,并且對每一次敲擊都有響應(yīng)!我將帶您了解我創(chuàng)建這些DIYMIDI的整個過程
    的頭像 發(fā)表于 04-15 11:49 ?592次閱讀
    基于Arduino的MIDI架子<b class='flag-5'>鼓</b>創(chuàng)建

    移動電源包了會爆炸嗎

    移動電源(充電寶)包了確實存在爆炸的風(fēng)險。包往往是由于充電寶內(nèi)部電池的老化、過熱或不當使用導(dǎo)致的。當電池老化、過熱或遭遇不當使用等情況時,電池內(nèi)部的安全閥可能會失效,導(dǎo)致氣體在電池內(nèi)部逐漸堆積,形成一個“氣袋”,最終導(dǎo)致充電寶外殼鼓起,形成明顯的
    的頭像 發(fā)表于 01-27 15:44 ?5265次閱讀

    移動電源包了還能用嗎

    當移動電源(充電寶)出現(xiàn)包現(xiàn)象時,強烈建議停止使用。繼續(xù)使用包的移動電源可能會導(dǎo)致嚴重的安全問題,包括短路、異常發(fā)熱、冒煙、燃燒甚至爆炸等。這些后果不僅可能損壞設(shè)備,還可能對人身安全構(gòu)成威脅。
    的頭像 發(fā)表于 01-27 15:42 ?3885次閱讀

    移動電源包怎么回事及處理方法

    移動電源(充電寶)包是一個值得關(guān)注的安全問題,其包的原因主要包括以下幾點:
    的頭像 發(fā)表于 01-27 15:41 ?7282次閱讀

    開源項目!基于 Arduino 的 MIDI 架子

    我一直夢想著在家里有一套架子,但空間、噪音和成本一直是挑戰(zhàn)。所以,我決定制作自己的緊湊型桌面 MIDI 組,它由 USB 供電,并且對每一次敲擊都有響應(yīng)! 我將帶您了解我創(chuàng)建這些 DIY
    發(fā)表于 11-25 12:00

    朗凱威DIY 磷酸鐵鋰電池組,探索能源新境界

    DIY 磷酸鐵鋰電池組(133-2632-1310),探索能源新境界在當今追求綠色能源和可持續(xù)發(fā)展的時代,越來越多的人開始對自制能源設(shè)備產(chǎn)生濃厚興趣。其中,DIY 磷酸鐵鋰電池組成為了不少電子
    的頭像 發(fā)表于 11-21 17:01 ?679次閱讀
    朗凱威<b class='flag-5'>DIY</b> 磷酸鐵鋰電池組,探索能源新境界

    SmartDAC-DIY評估模塊

    電子發(fā)燒友網(wǎng)站提供《SmartDAC-DIY評估模塊.pdf》資料免費下載
    發(fā)表于 11-01 09:19 ?0次下載
    SmartDAC-<b class='flag-5'>DIY</b>評估模塊

    電容器包不嚴重還能繼續(xù)用嗎

    電子設(shè)備中,電容器是一個至關(guān)重要的組件。它不僅在電路中充當儲能裝置,還能影響設(shè)備的性能和穩(wěn)定性。當我們發(fā)現(xiàn)電容器有包現(xiàn)象時,很多用戶會感到困惑:電容器包不嚴重,還能繼續(xù)使用嗎? 一
    的頭像 發(fā)表于 09-10 15:01 ?4809次閱讀
    電容器<b class='flag-5'>鼓</b>包不嚴重還能繼續(xù)用嗎

    電力電容器肚的根本原因是什么

    電力電容器在運行過程中經(jīng)常會出現(xiàn) “肚”現(xiàn)象,造成電容器肚的原因是主要是產(chǎn)品質(zhì)量問題,例如電容器薄膜質(zhì)量差,浸漬液為油類,沒有合格的凈化處理條件等,這些低質(zhì)量的產(chǎn)品在高場強下運行,極易造成
    的頭像 發(fā)表于 09-03 14:17 ?1692次閱讀

    低壓電容器包的隱患

    低壓電容器包(鼓脹)是電容器出現(xiàn)故障的常見表現(xiàn)之一,這種情況不僅影響電容器的正常運行,還可能帶來一系列的安全隱患。以下是低壓電容器包的隱患及原因分析: 一、低壓電容器包的隱患 1、引發(fā)電氣火災(zāi)
    的頭像 發(fā)表于 08-29 14:19 ?1796次閱讀