加入星計(jì)劃,您可以享受以下權(quán)益:

  • 創(chuàng)作內(nèi)容快速變現(xiàn)
  • 行業(yè)影響力擴(kuò)散
  • 作品版權(quán)保護(hù)
  • 300W+ 專業(yè)用戶
  • 1.5W+ 優(yōu)質(zhì)創(chuàng)作者
  • 5000+ 長(zhǎng)期合作伙伴
立即加入

UpyCraft-micropython設(shè)計(jì)- Microbit播放以及圖文顯示

2017/08/11
45
服務(wù)支持:
技術(shù)交流群

完成交易后在“購(gòu)買成功”頁(yè)面掃碼入群,即可與技術(shù)大咖們分享疑惑和經(jīng)驗(yàn)、收獲成長(zhǎng)和認(rèn)同、領(lǐng)取優(yōu)惠和紅包等。

虛擬商品不可退

當(dāng)前內(nèi)容為數(shù)字版權(quán)作品,購(gòu)買后不支持退換且無法轉(zhuǎn)移使用。

加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論
相關(guān)方案
  • 方案介紹
  • 相關(guān)文件
  • 相關(guān)推薦
  • 電子產(chǎn)業(yè)圖譜
申請(qǐng)入駐 產(chǎn)業(yè)圖譜

學(xué)習(xí)Python語言需要與實(shí)例相結(jié)合才能事半功倍。傻瓜教程來啦───使用Microbit播放音樂,顯示圖像或文字。

目的:

  • 循環(huán): 重復(fù)執(zhí)行一段代碼
  • 列表: 存放多個(gè)數(shù)據(jù)或命令
  • 條件語句: 通過if語句,讓代碼來判斷條件

技能:

  • 如何在microbit的屏幕上顯示圖像或文字
  • 如何發(fā)現(xiàn)microbit的按鍵被按下
  • 如何通過揚(yáng)聲器來播放音樂

所需軟硬件

  • UpyCraft-Micropython V0.24
  • Micro:bit主板
  • 數(shù)據(jù)線

揚(yáng)聲器Microbit與揚(yáng)聲器連接示意圖:

連線效果圖:

運(yùn)行成功效果:

、代碼詳解:

4 5 from microbit import * import music

第4行:你可以使用這個(gè)模塊里面的成員函數(shù)。導(dǎo)入的模塊越多,可以調(diào)用的成員函數(shù)也越多,但會(huì)占用更多的內(nèi)存。你可以通過Microbit模塊控制屏幕顯示、檢測(cè)按鈕狀態(tài)、音樂播放等。

7 8 9

10

music.set_tempo(bpm=220) Player_A_tune = ["c", "d", "e", "f", "g"]

Player_B_tune = ["g", "f", "e", "d", "c"]

第7行:控制當(dāng)按鍵按下時(shí)音樂的播放速度,數(shù)值越大,播放越快。

第8行和第10行:定義2個(gè)列表,均含5個(gè)字符。這些字符代表著音符的名字。

你可以自己寫出更好的曲調(diào),這里還有一些曲調(diào)可供參考:

"c#:4" :播放c調(diào)4個(gè)節(jié)拍

"db5:1" :播放D調(diào)1個(gè)節(jié)拍,5代表播放比C調(diào)多一個(gè)八度音階(即音階4)

"eb3:3" 播放E調(diào)3個(gè)節(jié)拍,第一個(gè)3代表播放比C調(diào)多一個(gè)八度音階(即音階4)

12 13 14

15

16

17

18

19

20

21

22

23

24

display.scroll("Quiz buzzer") while True:

display.show(Image.HAPPY)

if button_a.was_pressed():

display.show("A")

music.play(Player_A_tune)

sleep(2000)

elif button_b.was_pressed():

display.show("B")

music.play(Player_B_tune)

sleep(2000)

sleep(20)

第12行:在屏幕上滾動(dòng)顯示字符' Quiz buzzer '/ " Quiz buzzer "。必須是英文字體的單引號(hào)或雙引號(hào)。

第14行:while循環(huán),后面的條件滿足時(shí),將會(huì)執(zhí)行后面的語句,執(zhí)行完后,在判斷條件是否滿足,以此循環(huán),直到條件不滿足時(shí)退出。這里的True表示條件為真,那么程序會(huì)一直運(yùn)行14到24行的代碼。

Python:Microbit8

縮進(jìn)是判斷邏輯語句范圍的標(biāo)準(zhǔn),在python中非常重要。Python小白們要重視啊~

第15行:顯示一個(gè)笑臉。

第16到19行與第20到23行的功能相似:判斷按鍵是否按下。如果按鍵a按下,顯示‘A’播放列表‘Player_A_tune’,睡眠2秒,如果按鍵b按下,顯示‘B’播放列表‘Player_B_tune’。

第24行:讓程序睡眠20毫秒,然后繼續(xù)進(jìn)入循環(huán)。

下面是microbit的音樂代碼,有一些錯(cuò)誤供大家修改,‘#’可以注釋(屏蔽)一行代碼,可以用來判斷BUG的位置。

Python是區(qū)分大小寫的

*Python中縮進(jìn)很重要

如果你將代碼調(diào)試出來了,你可以試試同時(shí)按下2個(gè)按鍵。你會(huì)發(fā)現(xiàn)它會(huì)顯示a按鍵被按下。

轉(zhuǎn)自DF社區(qū)-Nana

  • 代碼附件1.txt
    描述:代碼附件1
  • 代碼附件2.txt
    描述:代碼附件2

相關(guān)推薦

電子產(chǎn)業(yè)圖譜