7023| 6
|
[入门教程] 【掌控】mpython-25…有了新固件,我的掌控会“唱歌” |
掌控团队的攻城狮团队很勤奋,不断的创造新的内容出来。比如,今天分享给大家的掌控音乐固件。 视频展示先: 上面图片有一个能量站的公益推广二维码,里面有很多的创客教育课程,如果喜欢可以付费进入。 为知识付费,是对知识的一种尊重。 【【新动向,新提示,下面一部分内容只用来参考】】 【【在马上推出的新版mpython 0.2.5中,增加了刷入新版固件的功能】】 【【【掌控】掌控刷新固件了,新增音乐库,方法超级简单哦 https://mc.dfrobot.com.cn/forum.php?mod=viewthread&tid=272202】】 【帖子写得早,有更新 2018.11.13】这个固件还没有正式推出,因为软件的固件升级功能还没做好。 (等官方有了更加方便易用的固件升级软件后,我帖子再更新下。) 所以这里我不代表官方,只是给想尝鲜的朋友,如果你愿意自己刷这个固件玩,可以试试。 【小提示】刷固件前请你保存自己掌控板上的代码文件,刷固件将会清空板子里的文件。 下面讲一下刷固件的方法。 参考帮助文档: https://mpython.readthedocs.io/zh/latest/board/flashburn.html 1、烧录工具使用乐鑫官网提供的下载软件 ESPFlashDownloadTool 2、选择 SPIDownload ,然后浏览并选中刚下载的掌控板固件target.bin,并设置地址是0。 将CrystallFreq设为40M,SPI SPEED 设为40MHz,SPI MODE设为DIO,FLASH SIZE改为64MBit,串口号设置为实际串口,波特率1152000。 点击START,掌控板同时按下a,b键持续2秒后松开,此时掌控板将进入Download模式。固件下载中,如下图。 3、等待一会儿,固件刷入成功。 4、在mpython中连接掌控,点击文件按钮,发现里面只有boot.py一个文件。 右击,刷入mpython.py库文件。 等文件列表刷新完成,就可以用music写代码了。 【【上面一段可以跳过去了】】 【【刷入带音乐库新固件的方法在另一个帖子里,后面可能有更多新固件出来,都会用到这个方法的】】 【【刷固件了,超简单】】 music功能完全兼容micro:bit的,可以参考micro:bit的文档music部分 可以参考下面网页: a、http://docs.dfrobot.com.cn/bxy/music.html b、https://microbit-micropython.readthedocs.io/en/latest/music.html 【开始写代码】 1、播放内置音乐的功能 [mw_shl_code=python,true]from mpython import * import music music.play(music.NYAN)[/mw_shl_code] 2、自定义乐曲 解读:C1:4代表钢琴C区1键,持续时间4 C#4:1, #表示C4键旁边的黑键 要玩转它,还要学点音乐知识呢。 两只老虎 [mw_shl_code=python,true]from mpython import * import music tune = ["C4:4", "D4:4", "E4:4", "C4:4", "C4:4", "D4:4", "E4:4", "C4:4", "E4:4", "F4:4", "G4:8", "E4:4", "F4:4", "G4:8"] music.play(tune)[/mw_shl_code] 3、触摸选曲 视频中的项目例程 [mw_shl_code=python,true]from mpython import * import music display.fill(0) display.DispChar('pleas touchPad', 16, 16) display.show() while True: if touchPad_P.read() < 100: display.fill(0) display.DispChar('music.BADDY', 16, 16) display.show() rgb.fill((0, 10, 0)) rgb.write() music.play(music.BADDY) elif touchPad_Y.read() < 100: display.fill(0) display.DispChar('music.BIRTHDAY', 16, 16) display.show() rgb.fill((0, 10, 10)) rgb.write() music.play(music.BIRTHDAY) elif touchPad_T.read() < 100: display.fill(0) display.DispChar('music.NYAN', 16, 16) display.show() rgb.fill((10, 10, 0)) rgb.write() music.play(music.NYAN) elif touchPad_H.read() < 100: display.fill(0) display.DispChar('music.PYTHON', 16, 16) display.show() rgb.fill((10, 0, 10)) rgb.write() music.play(music.PYTHON) elif touchPad_O.read() < 100: display.fill(0) display.DispChar('music.PRELUDE', 16, 16) display.show() rgb.fill((50, 10, 0)) rgb.write() music.play(music.PRELUDE) elif touchPad_N.read() < 100: display.fill(0) display.DispChar('music.ODE', 16, 16) display.show() rgb.fill((10, 10, 0)) rgb.write() music.play(music.ODE) [/mw_shl_code] 4、自定义音乐 [mw_shl_code=python,true]from mpython import * import music # play Prelude in C. notes = [ 'c4:1', 'e', 'g', 'c5', 'e5', 'g4', 'c5', 'e5', 'c4', 'e', 'g', 'c5', 'e5', 'g4', 'c5', 'e5', 'c4', 'd', 'a', 'd5', 'f5', 'a4', 'd5', 'f5', 'c4', 'd', 'a', 'd5', 'f5', 'a4', 'd5', 'f5', 'b3', 'd4', 'g', 'd5', 'f5', 'g4', 'd5', 'f5', 'b3', 'd4', 'g', 'd5', 'f5', 'g4', 'd5', 'f5', 'c4', 'e', 'g', 'c5', 'e5', 'g4', 'c5', 'e5', 'c4', 'e', 'g', 'c5', 'e5', 'g4', 'c5', 'e5', 'c4', 'e', 'a', 'e5', 'a5', 'a4', 'e5', 'a5', 'c4', 'e', 'a', 'e5', 'a5', 'a4', 'e5', 'a5', 'c4', 'd', 'f#', 'a', 'd5', 'f#4', 'a', 'd5', 'c4', 'd', 'f#', 'a', 'd5', 'f#4', 'a', 'd5', 'b3', 'd4', 'g', 'd5', 'g5', 'g4', 'd5', 'g5', 'b3', 'd4', 'g', 'd5', 'g5', 'g4', 'd5', 'g5', 'b3', 'c4', 'e', 'g', 'c5', 'e4', 'g', 'c5', 'b3', 'c4', 'e', 'g', 'c5', 'e4', 'g', 'c5', 'a3', 'c4', 'e', 'g', 'c5', 'e4', 'g', 'c5', 'a3', 'c4', 'e', 'g', 'c5', 'e4', 'g', 'c5', 'd3', 'a', 'd4', 'f#', 'c5', 'd4', 'f#', 'c5', 'd3', 'a', 'd4', 'f#', 'c5', 'd4', 'f#', 'c5', 'g3', 'b', 'd4', 'g', 'b', 'd', 'g', 'b', 'g3', 'b3', 'd4', 'g', 'b', 'd', 'g', 'b' ] music.play(notes)[/mw_shl_code] 这么厉害的功能,喜欢音乐的伙伴玩起来吧。 例如编一曲超级玛丽,做一个游戏,用掌控玩起来如何。 target.rar |
© 2013-2025 Comsenz Inc. Powered by Discuz! X3.4 Licensed