第四章 音樂實驗
第四章 音樂實驗
材料:耳機(無源蜂鳴器,8歐姆小喇叭),杜邦線,鱷魚夾,3伏電池(鋰電池)。
1,播放音樂
播放一個音:
可以選擇音調和節拍:
播放一串音:
播放一首樂曲:
可以選擇不同的樂曲和播放模式。
在左邊的模擬區可以測試效果,聲音由計算機發出。
小強:離開計算機怎麼辦?
2,離線播放音樂
板子要脫離計算機播放音樂,就要外接耳機或揚聲器。
音樂從P0腳輸出,另一線接地,可以通過雙頭鱷魚夾連線。
小強:耳機太麻煩,而且只有自己聽到。
那就用無源蜂鳴器:
注意:無源蜂鳴器有極性,不能接反,記得撕掉封條。
小強:好難聽!
那就用8歐姆小喇叭:
小強:這還差不多,就是音量有點小。
接上電池測試。
小強:能選的音樂太少,能不能自己編曲?
3,自編音樂
小強:能不能做個電子琴?
4,五音電子琴
bit上有兩個按鈕,另外P0、P1、P2有按鈕功能,但P0要作為音樂輸出,所以不能用:
小強:太少了!
5,十八音電子琴
先學點預備知識。
5.1 知識點:輸入輸出埠(I/O)
bit共有19個輸入輸出埠(I/O),I/O是INPUT和OUTPUT的縮寫,可以用來作為輸入輸出。也叫數字埠。
小強:為什麼叫數字埠?
因為計算機只認得兩個數:0和1,所以它輸入和輸出都只能是0和1。
小強: 0和1是什麼意思?
0代表低電平(電壓),通常指接地(GND),1代表高電平(電壓),通常指電源電壓(或者接近電源電壓)
也就是說,把某個埠接到地,就是輸入0,接電源就是輸入高電平,輸入1。
同樣,如果讓某個埠輸出0,那麼它的電平就是0(接地),輸出1就是高電平(內接電源電壓)。
小強:埠既能作為輸入,又能作為輸出嗎?
可以,但不能同時,你要指定它作為輸入或者輸出。
5.2 知識點:指定埠輸入或輸出
點開“高階”,“引腳”:
拖出“向引腳數字寫入值”和“數字讀取引腳”:
意思是:
當A按下,指定埠P0為輸出,並輸出高電平。
當B按下,指定埠P0為輸入,並將輸入值存放在變數“item”中。
注意:數字讀取引腳的值,要存放在變數中!
如果把發光二極體接在P0和地之間,按下A時,它會發光。
所以,我們可以用程式控制某個埠接電源正極或負極,就象一個開關。所謂程式設計,就是控制一系列開關!
修改變數名為“P3”,我們指定埠P3為輸入:
可以看到,從P0-P20共19個腳都可用。(P17,P18不存在)
當它為低電平(接地)時,播放中音C:
下載到bit,用導線將P3腳和地短路,聽“哆”的一聲。
小強:不是!一直“哆”! 還亮了三個燈!
這說明,P3引腳一直是低電平。
原來,P3引腳是跟板載的LED燈相連的(參看圖1),bit的引腳大部分都是兼職,它的電平有高有低,還有的隨機。
小強:怎麼辦?
拉高它,就是把它接到電源電壓。
5.3 知識點:配置上拉/下拉
點開”高階“,“引腳”,“更多”,拖出“ 設定拉 引腳為”:
放在“當開機時”中,把P3設為上拉:
上拉:把埠接高電平,即接電源正極 。
下拉:把埠接低電平,即接電源負極。
搞定。
同樣,設定其它埠中:
讀取各埠值,存放在對應的變數中:
判斷各埠值,播放不同的聲音:
完整程式:
用導線一端接地,另一端分別接不同的埠,一個18音電子琴做好了。
小明:不對吧?埠拉高,就是接電源正極,那你又把它接地,那不是電源短路了?不會燒壞?
問得好!
5.4 知識點:內部上拉/下拉電阻
其實,拉高,並沒有真的接電源正極,拉低也沒有真的接電源負極! 而是通過一個大電阻(比如10K歐)接正極或負極。
所以,如果P0為上拉,即使P0接地,流出P0的電流也只有3/10000=0.00003安=0.3毫安。不會短路。
同樣,如果P0為下拉,即使P0接電源正極,也只有0.3毫安的電流流入。
6、 用音調錶示資料
比如,金屬控測器:
相關文章
- 實驗一原型設計-汽水音樂app原型APP
- 實驗3-安卓音樂盒軟體安卓
- 聽見未來:AI音樂生成,個性化音樂新體驗!AI
- AI音樂,騰訊音樂、網易雲音樂的新版圖?AI
- jQuery實現高仿QQ音樂jQuery
- 音樂播放器WordPress外掛 WP-Player (支援網易雲音樂, 蝦米音樂, QQ音樂, 百度音播放器
- 譚盾與遊戲音樂,一場從符號到意義的“實驗”遊戲符號
- 雲音樂FeatureStore建設與實踐REST
- 雲音樂預案平臺實踐
- Vue 實現網易雲音樂 WebAppVueWebAPP
- QQ音樂音質加密加密
- COMUUU讓音樂迴歸:人人都可玩轉音樂,更在音樂中找尋知音
- 消消樂實驗總結與反思
- 抖音音樂:2020抖音音樂生態資料包告(附下載)
- 遊戲音樂與影視音樂的異同遊戲
- 5G+VR沉浸式體驗 《神武4》攜手咪咕音樂舉辦首場線上音樂會VR
- RocketMQ 在網易雲音樂的實踐MQ
- 雲音樂 Swift 混編 Module 化實踐Swift
- 音樂格式轉換:java程式碼實現Java
- Python實現多功能音樂播放器Python播放器
- Python爬蟲實踐-網易雲音樂Python爬蟲
- Python從網易雲音樂、QQ 音樂、酷狗音樂等搜尋和下載歌曲Python
- 央視攜騰訊打造首個數實融合虛擬音樂世界節目體驗
- 音樂狂3.9
- vue+webpack繞過QQ音樂介面對host的驗證VueWeb
- 千千音樂 for Mac(原百度音樂播放器)Mac播放器
- 遊戲音樂和影視音樂有什麼不同?遊戲
- c語音實驗1作業
- Electron+Vue實現仿網易雲音樂實戰Vue
- QQ音樂API koa2實現 - 全介面實現API
- 音樂訊號分析演算法的樂理簡說(非音樂專業的樂理)演算法
- 華為雲+騰訊音樂天琴實驗室達成深度合作,基於昇騰AIAI
- 如何使用 pyqt 實現 Groove 音樂播放器QT播放器
- Android 音樂播放器開發實錄(MediaSession)Android播放器Session
- html網頁新增音樂影片的實現示例HTML網頁
- 實現一個網易雲音樂的 BottomSheetDialog
- Vue 全家桶實現網易雲音樂 WebAppVueWebAPP
- QQ音樂:React v16 新特性實踐React