欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 18055|回復: 0
打印 上一主題 下一主題
收起左側

Arduino實現聲控燈

[復制鏈接]
跳轉到指定樓層
樓主
ID:290266 發表于 2018-4-7 00:59 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式

小時候有沒有對走廊的聲控燈很感興趣呢?會不會拼命的跺腳只為讓那盞燈點亮。這節 我們就做個這樣的聲控燈。只有你輕輕拍下手, 燈就自動亮起來了,沒了聲音,燈就又自動 關了。這里用到的是個聲音傳感器,我們可以利用這個傳感器做出更多互動作品,通過聲音 觸發來控制更多好玩兒的東西,比如說做個發光鼓等等。



所需元件

1×  數字食人魚紅色 LED 發光模塊


1×  模擬聲音傳感器


1×  IO 傳感器擴展板 V7.1


   1× 英特爾® Edison for Arduino 開發板





硬件連接

模擬聲音傳感器     模擬 0

數字食人魚紅色 LED 發光模塊    數字 13


圖 4-1 聲控燈

輸入代碼


  1. //聲控燈

  2. int soundPin = 0;                             //聲音傳感器接到模擬 0 int ledPin =               13;               //LED 接到數字 13


  3. void setup() {

  4. pinMode(ledPin, OUTPUT);

  5. // Serial.begin(9600);               //用于調試

  6. }



  7. void loop(){

  8. int soundState = analogRead(soundPin);               //讀取傳感器的值

  9. // Serial.println(soundState);               //串口打印聲音傳感器的值



  10. //如果聲音值大于 10,亮燈,并持續 10s,否則關燈

  11. if (soundState > 10) { digitalWrite(ledPin, HIGH); delay(10000);
  12. }else{

  13. digitalWrite(ledPin, LOW);

  14. }

  15. }
復制代碼

對著話筒拍下手,或者說句話,試試燈能不能點亮?
硬件分析 (模擬輸入 — 數字輸出)

前面幾次我們接觸的都是數字傳感器,這次我們要嘗試使用模擬傳感器了,還記得在一 開始說的數字與模擬的區別嗎?(串口中認識“數字”與“模擬”一節)。數字,只有兩個值



(0/1)。模擬,是線性的,理論上的無限值(0~1023)。

所以這里是個,模擬輸入,數字輸出的模式。









代碼回顧

在 setup()中只設置了 LED 為輸出,為什么沒有設置聲音傳感器輸入模式?這是因為 模擬口都是輸入設置,所以不需要設置了。




聲音傳感器是輸入設備,所以需要讀取對應模擬口  0  的值。 與讀取數字口函數

digitalRead(pin)類似,所以模擬口讀取函數是:

analogRead(pin)

這個函數用于從模擬引腳讀值,pin 是指連接的模擬引腳。Arduino 的模擬引腳連接到 一個了 10 位 A/D 轉換,輸入 0~5V 的電壓對應讀到 0~1023 的數值,每個讀到的數值對 應的都是一個電壓值。比如 512 = 2.5V。




最后是一個 if 判斷,判斷是否到達你預設的值。

if (soundState > 10) {

...

}else{


...

}



需要修改預設值的話,可以打開串口監視器,看看你需要的聲音強度的值在什么范圍,

然后做相應調整就可以了。




完整的pdf格式文檔51黑下載地址:
聲控燈.pdf (2.97 MB, 下載次數: 41)



分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表