一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

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

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

RGBLED鍵盤模塊鋼琴的制作

454398 ? 來(lái)源:工程師吳畏 ? 2019-08-09 11:10 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

步驟1:需要的材料

材料清單

Piezo Buzzer 1x

4x4鍵盤模塊1x

Arduino Uno 1x

USB 2.0電纜類型A/B 1x

聲音傳感器模塊1x

RGB LED 1x

330歐姆電阻3x

公對(duì)母跳線8x

男性跳線4x

3 pin公對(duì)母跳線1x

材料清單與上面的圖片有序。

第2步:建立時(shí)間!

4x4鍵盤模塊& Piezo Buzzer

理論

由于4x4鍵盤模塊和壓電蜂鳴器包含許多單獨(dú)的引腳輸入,我決定將所用的組件分成兩部分對(duì)。專注于鍵盤,通常用作輸入。 SunFounder 4 * 4矩陣鍵盤模塊是一個(gè)矩陣非編碼鍵盤,由16個(gè)并行鍵組成,每行和每列的鍵通過(guò)外部引腳連接 - 引腳Y1-Y4,如同標(biāo)記旁邊控制行,當(dāng)X1- X4,列。

目的

這些組件對(duì)整個(gè)項(xiàng)目的目的是允許用戶按下設(shè)置為a的按鈕壓電蜂鳴器通過(guò)赫茲頻率產(chǎn)生的特定聲音。

矩陣模塊引腳 - Arduino引腳

4 - 2

3 - 3

2 - 4

1 - 5

5 - 6

6 - 7

7 - 8

8 - 13

Piezo Buzzer - Arduino Pin

黑色 - GND

紅色 - 電源

我在這個(gè)版本中最困難的任務(wù)是弄清楚每根電線插入的位置。上面我提供了快速簡(jiǎn)便的線路位置,只要按照從上到下的方式,尖端需要花費(fèi)時(shí)間并確保每個(gè)引腳都正確插入正確的插槽。

*提示是遵循每根導(dǎo)線從一端到另一端的位置。

特定元件導(dǎo)線的所有Tinkercad草圖都是正確的顏色編碼,因此請(qǐng)仔細(xì)閱讀。

第3步:聲音傳感器模塊和RGB LED

聲音傳感器模塊和RGB LED

理論

聲音傳感器模塊允許您檢測(cè)聲音何時(shí)超過(guò)您選擇的設(shè)定點(diǎn)。通過(guò)麥克風(fēng)檢測(cè)聲音并將其饋入LM393運(yùn)算放大器。一旦聲級(jí)超過(guò)設(shè)定值,模塊上的LED將亮起并輸出。

目的

這些組件對(duì)整個(gè)項(xiàng)目的目的是獲得聲音傳感器模塊的聲音/音量讀數(shù),通過(guò)讀取RGB LED將激活與聲音有關(guān)的正確顏色。

聲音傳感器模塊 - Arduino引腳(使用3針跳線)

輸出 - A0模擬引腳

GND - 任何開(kāi)路GND引腳插槽

VCC - 3V

RGB共陽(yáng)極(+)LED - Arduino引腳

紅色 - 9

電源 - 5V

綠色 - 10

藍(lán)色 - 11

請(qǐng)記住電線,每根電線穿過(guò)330歐姆電阻。使用上面的圖片作為參考。

我在這個(gè)版本中最困難的任務(wù)是弄清楚每根電線插入的位置。上面我提供了快速簡(jiǎn)便的線路位置,只要按照從上到下的方式,提示就是花時(shí)間確保每個(gè)引腳都正確插入到正確的插槽中以防止將來(lái)調(diào)試。

*提示是遵循每條線插入的方式。

特定組件線的所有Tinkercad草圖都是正確的顏色編碼,因此請(qǐng)遵循。

步驟4:代碼

代碼

此代碼允許使用新定義的所有組件一起工作功能包含所有許多控件一個(gè)組件,它有許多可變變量,這些組件是RGB led,并使用rgb顏色改變打開(kāi)時(shí)的顏色和壓電蜂鳴器以及根據(jù)按鈕按下它會(huì)產(chǎn)生的聲音。

此代碼中必須包含鍵盤庫(kù)

下載后,將新庫(kù)添加到ardu中ino,然后插入激活它所需的單行代碼。

我在代碼中遇到的困難是將新定義的函數(shù)放在何處通過(guò)反復(fù)試驗(yàn)我發(fā)現(xiàn)它必須在設(shè)置中而不是循環(huán)。

代碼

#include // Keypad Library

int greenPin = 11; //RGB Green Pin connected to digital pin 9

int redPin= 10; //RGB Red Pin connected to digital pin 9

int bluePin = 9; //RGB Blue Pin connected to digital pin 9

int speakerPin = 12; // speaker connected to digital pin 12

const byte ROWS = 4; // four rows

const byte COLS = 4; // four coloums

const int soundPin = A0; //sound sensor attach to A0

char keys[ROWS][COLS] = {

{‘a(chǎn)’,‘b’,‘c’,‘d’},

{‘e’,‘f’,‘g’,‘h’},

{‘i’,‘j’,‘k’,‘l’},

{‘m’,‘n’,‘o’,‘p’}

}; // Visualization of keypad module

byte rowPins[ROWS] = {2, 3, 4, 5}; // connect to the row pinouts of the keypad

byte colPins[COLS] = {6, 7, 8, 13}; // connect to the colum pinouts of the keypad

Keypad keypad = Keypad ( makeKeymap(keys), rowPins, colPins, ROWS, COLS ); // Creates keys

void setup(){

pinMode(speakerPin, OUTPUT); // sets the speakerPin to be an output

pinMode(redPin, OUTPUT); // sets the red pin to be an output

pinMode(greenPin, OUTPUT); // sets the green pin to be an output

pinMode(bluePin, OUTPUT); // sets the blue pin to be an output

Serial.begin (9600);

}

void setColor(int red, int green, int blue) // New defined function to allow RGB to display colour through RGB code

{

#ifdef COMMON_ANODE

red = 255 - red;

green = 255 - green;

blue = 255 - blue;

#endif

analogWrite(redPin, red);

analogWrite(greenPin, green);

analogWrite(bluePin, blue);

}

void beep (unsigned char speakerPin, int frequencyInHertz, long timeInMilliseconds){ // the sound producing functions

int x;

long delayAmount = (long)(1000000/frequencyInHertz);

long loopTime = (long)((timeInMilliseconds*1000)/(delayAmount*2));

for (x=0;x

void loop (){

char key = keypad.getKey();

int value = analogRead(soundPin);//read the value of A0

Serial.println(value);//print the value

if (key != NO_KEY) {

Serial.println(key);

}

if (key==‘a(chǎn)’){

beep(speakerPin,2093,100);

setColor(218, 112, 214);

}

if (key==‘b’){

beep(speakerPin,2349,100);

setColor(218, 112, 214);

}

if (key==‘c’){

beep(speakerPin,2637,100);

setColor(218, 112, 214);

}

if (key==‘d’){

beep(speakerPin,2793,100);

setColor(218, 112, 214);

}

if (key==‘e’){

beep(speakerPin,3136,100);

setColor(218, 112, 214);

}

if (key==‘f’){

beep(speakerPin,3520,100);

setColor(218, 112, 214);

}

if (key==‘g’){

beep(speakerPin,3951,100);

setColor(218, 112, 214);

}

if (key==‘h’){

beep(speakerPin,4186,100);

setColor(218, 112, 214);

}

if (key==‘i’){

beep(speakerPin,2093,100);

setColor(230, 230,0 );

}

if (key==‘j’){

beep(speakerPin,2349,100);

setColor(180,255,130);

}

if (key==‘k’){

beep(speakerPin,2637,100);

setColor(130,255,130);

}

if (key==‘l’){

beep(speakerPin,2739,100);

setColor(130,220,130);

}

if (key==‘m’){

beep(speakerPin,3136,100);

setColor(0,255,255);

}

if (key==‘n’){

beep(speakerPin,3520,100);

setColor(0,220,255);

}

if (key==‘o’){

beep(speakerPin,3951,100);

setColor(0,69,255);

}

if (key==‘p’){

beep(speakerPin,4186,100);

setColor(255, 0,255 );

}

}

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

    關(guān)注

    242

    文章

    23805

    瀏覽量

    672925
  • 鋼琴
    +關(guān)注

    關(guān)注

    0

    文章

    9

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    HarmonyOS應(yīng)用自定義鍵盤解決方案

    自定義鍵盤是一種替換系統(tǒng)默認(rèn)鍵盤的解決方案,可實(shí)現(xiàn)鍵盤個(gè)性化交互。允許用戶結(jié)合業(yè)務(wù)需求與操作習(xí)慣,對(duì)按鍵布局進(jìn)行可視化重構(gòu)、設(shè)置多功能組合鍵位,使輸入更加便捷和舒適。在安全防護(hù)層面,自定義鍵盤
    的頭像 發(fā)表于 06-05 14:19 ?585次閱讀

    怎么調(diào)出來(lái)點(diǎn)擊彈出的鍵盤是9鍵數(shù)字小鍵盤

    我使用了系統(tǒng)默認(rèn)的中文鍵盤,但是我有一些輸入框需要的是默認(rèn)的9鍵數(shù)字輸入。我應(yīng)該怎么調(diào)出來(lái)點(diǎn)擊彈出的鍵盤是9鍵數(shù)字小鍵盤。用按鈕組自己做嗎?
    發(fā)表于 04-02 07:41

    樹(shù)莓派OS 的屏幕鍵盤不好用?這個(gè)方法可以解決問(wèn)題!

    導(dǎo)語(yǔ)如果你有一臺(tái)樹(shù)莓派的觸摸屏或者HMI產(chǎn)品,希望使用屏幕虛擬鍵盤輸入信息時(shí),會(huì)出現(xiàn)下面的困惑,默認(rèn)打開(kāi)的鍵盤只有一點(diǎn)點(diǎn),不能鋪滿整個(gè)屏幕,用起來(lái)很不方便,最后只能放棄改用外部的USB鍵盤
    的頭像 發(fā)表于 03-25 09:19 ?329次閱讀
    樹(shù)莓派OS 的屏幕<b class='flag-5'>鍵盤</b>不好用?這個(gè)方法可以解決問(wèn)題!

    實(shí)時(shí)演示:智能模塊-儀表盤控件制作與應(yīng)用

    智能模塊
    SmartLCD
    發(fā)布于 :2025年03月11日 08:38:00

    AN-660:XY矩陣鍵盤與MicroConverter的接口

    電子發(fā)燒友網(wǎng)站提供《AN-660:XY矩陣鍵盤與MicroConverter的接口.pdf》資料免費(fèi)下載
    發(fā)表于 01-13 16:02 ?0次下載
    AN-660:XY矩陣<b class='flag-5'>鍵盤</b>與MicroConverter的接口

    TCA8418用來(lái)做鍵盤擴(kuò)展,有時(shí)候設(shè)備開(kāi)關(guān)機(jī)或進(jìn)入睡眠狀態(tài),啟動(dòng)或喚醒會(huì)出現(xiàn)鍵盤失靈現(xiàn)象,怎么解決?

    在TCA8418旁邊有13.56MHZ的讀卡模塊,TCA8418用來(lái)做鍵盤擴(kuò)展,有時(shí)候設(shè)備開(kāi)關(guān)機(jī),或進(jìn)入睡眠狀態(tài),啟動(dòng)或喚醒會(huì)出現(xiàn)鍵盤失靈現(xiàn)象。8418是什么原因受干擾,有什么辦法避免么,有什么好的解決方法。
    發(fā)表于 01-03 08:04

    村田制作所推出遠(yuǎn)距離高速Wi-Fi HaLow通信模塊

    株式會(huì)社村田制作所近期宣布,成功研發(fā)出兩款全新的通信模塊——“Type 2HK”與“Type 2HL”,這兩款模塊均能夠?qū)崿F(xiàn)1公里以上的遠(yuǎn)距離高速數(shù)據(jù)傳輸,并全面支持Wi-Fi?標(biāo)準(zhǔn)中的“Wi-Fi
    的頭像 發(fā)表于 12-25 16:16 ?928次閱讀

    村田制作所推出小型低功耗IoT通信模塊

    株式會(huì)社村田制作所近期宣布,已成功開(kāi)發(fā)出針對(duì)IoT(物聯(lián)網(wǎng))設(shè)備的全新通信模塊——“Type 2FR/2FP”。這款模塊集成了Wi-Fi 6、Bluetooth? Low Energy以及
    的頭像 發(fā)表于 12-24 13:47 ?826次閱讀

    太陽(yáng)能藍(lán)牙鍵盤專用 微光微能量收集芯片-MF9006

    太陽(yáng)能藍(lán)牙鍵盤是一種利用太陽(yáng)能為動(dòng)力的無(wú)線鍵盤,通過(guò)光伏電池將光能轉(zhuǎn)化為電能,從而驅(qū)動(dòng)鍵盤工作。這類鍵盤無(wú)需更換電池,減少了對(duì)環(huán)境的影響,并且在有光的環(huán)境下可以持續(xù)供電,即使在完全黑暗
    的頭像 發(fā)表于 11-26 01:02 ?557次閱讀
    太陽(yáng)能藍(lán)牙<b class='flag-5'>鍵盤</b>專用 微光微能量收集芯片-MF9006

    使用MSP430微控制器的USB鍵盤

    電子發(fā)燒友網(wǎng)站提供《使用MSP430微控制器的USB鍵盤.pdf》資料免費(fèi)下載
    發(fā)表于 10-18 10:35 ?0次下載
    使用MSP430微控制器的USB<b class='flag-5'>鍵盤</b>

    使用TLC5951進(jìn)行鍵盤背光

    電子發(fā)燒友網(wǎng)站提供《使用TLC5951進(jìn)行鍵盤背光.pdf》資料免費(fèi)下載
    發(fā)表于 10-08 10:31 ?0次下載
    使用TLC5951進(jìn)行<b class='flag-5'>鍵盤</b>背光

    基于XIAO SAMD21開(kāi)發(fā)板的數(shù)字鍵盤制作方案

    今天小編給大家?guī)?lái)了來(lái)自印度的Arnov Sharma 制作的基于XIAO SAMD21的數(shù)字鍵盤項(xiàng)目,該項(xiàng)目可以通過(guò)按鍵在電腦和OLED的屏幕上輸入0-9的阿拉伯?dāng)?shù)字,可以當(dāng)作一個(gè)數(shù)字副鍵盤來(lái)使用。
    的頭像 發(fā)表于 09-06 10:02 ?700次閱讀
    基于XIAO SAMD21開(kāi)發(fā)板的數(shù)字<b class='flag-5'>鍵盤</b><b class='flag-5'>制作</b>方案

    鍵盤、按鈕和側(cè)鍵的ESD保護(hù)

    電子發(fā)燒友網(wǎng)站提供《鍵盤、按鈕和側(cè)鍵的ESD保護(hù).pdf》資料免費(fèi)下載
    發(fā)表于 08-30 10:08 ?0次下載
    <b class='flag-5'>鍵盤</b>、按鈕和側(cè)鍵的ESD保護(hù)

    開(kāi)源項(xiàng)目!基于 Arduino DIY 漂亮的宏機(jī)械鍵盤

    。 接下來(lái),我們將要制作的這款鍵盤擁有 12 個(gè)按鍵,你可以根據(jù)自己的喜好和需求,將這些按鍵與所需的快捷鍵進(jìn)行關(guān)聯(lián)。盡管這個(gè)項(xiàng)目聽(tīng)起來(lái)可能有些復(fù)雜,但實(shí)際上無(wú)論是電子部分還是軟件部分,都非常易于上手和操作
    發(fā)表于 08-19 17:02

    安信可星閃大鍵盤全新升級(jí)了!#星閃

    鍵盤安信可
    jf_31745078
    發(fā)布于 :2024年07月30日 10:35:40