2018-10-6 10:40:20 [显示全部楼层]
4546浏览
查看: 4546|回复: 3

[入门教程] 【掌控】mpython-13…handpy,再弹一曲要不要

[复制链接]
本帖最后由 rzyzzxw 于 2018-11-8 08:20 编辑

-小掌控,你的英文名字叫Handpy么?-今天,你再给我们来一曲吧。

-为了便于小伙伴们快速的写出代码曲子。
-我们用两个数组给你写代码,一个数组放音符,一个数组放频率,这样通过两个数组合作,共同演奏新乐曲。

【掌控】mpython-13…handpy,再弹一曲要不要图3

【特别感谢】
           七七老师的源程序,数组是我的弱项,七七老师帮助我在学习的路上有了新收获。
           同时感谢掌控团队的技术支持。
           感谢谢作如老师,管雪沨老师,周茂华老师,吴俊杰老师的鼓励。
           感谢DF创客社区平台的支持。
           这个帖子还献给喜欢国内首款面向学生编程开源硬件的小伙伴们。
【视频】


【学习小目标】
1、数组
2、板载蜂鸣器
3、for循环
4、布尔变量

【乐曲小星星】
1、还以小星星为例:
【掌控】mpython-13…handpy,再弹一曲要不要图1
【掌控】mpython-13…handpy,再弹一曲要不要图2
2、编程,定义两个数组

程序:
[mw_shl_code=python,true]from mpython import *  #导入掌控库
import time   #导入时间库
  
#音符数组
song = [1, 1, 5, 5, 6, 6, 5, 5, 4, 4, 3, 3, 2, 2, 1, 1, 5, 5, 4, 4, 3, 3, 2, 2, 5, 5,
        4, 4, 3, 3, 2, 2, 1, 1, 5, 5, 6, 6, 5, 5, 4, 4, 3, 3, 2, 2, 1, 1, ]
#频率数组
m = [525, 589, 661, 700, 786, 882, 988]
  
#定义蜂鸣器引脚
buzz = PWM(Pin(16), freq=500, duty=0)
  
#节目预告,屏幕显示
display.fill(0)
display.DispChar("下面看我弹小星星", 10, 16)
display.show()
  
sound = False  #定义布尔变量,设为False(假)
i = 0
while True:
    if(touchPad_P.read() < 100):#如果引脚P被触摸,变量设为True(真),下同
        sound = True         
    elif(touchPad_Y.read() < 100):
        sound = True
    elif(touchPad_T.read() < 100):
        sound = True
    elif(touchPad_H.read() < 100):
        sound = True
    elif(touchPad_O.read() < 100):
        sound = True
    elif(touchPad_N.read() < 100):
        sound = True   
    else:                      #否则设为False(假)
        sound = False
    if sound:                  #如果sound为True(真)
        buzz.freq(m[song])  #调用数组频率(嵌套音符数组)
        buzz.duty(512)         #音量512
        time.sleep_ms(500)     #时长500毫秒
        if i == 30:            
            i = 0
        else:
            i = i + 1
        sound = False
        buzz.duty(0)           #音量设为0[/mw_shl_code]

七七老师这一段程序写得很有趣,请认真感悟一下哈。

我也要再好好体会一下。
特别是最后这一段:
if i == 30:            
            i = 0
        else:
            i = i + 1   
        sound = False
        buzz.duty(0)           #音量设为0



要听其它的曲子,自己写代码吧。


hnyzcj  版主

发表于 2018-10-6 10:42:51

对朱老师的精神佩服的五体投地
回复

使用道具 举报

rzyzzxw  版主
 楼主|

发表于 2018-10-6 10:51:10

本帖最后由 rzyzzxw 于 2018-10-6 10:53 编辑
hnyzcj 发表于 2018-10-6 10:42
对朱老师的精神佩服的五体投地

这个假期,真羡慕朋友圈晒风景的小伙伴。傻傻如我,与社区为伴。
回复

使用道具 举报

rzyzzxw  版主
 楼主|

发表于 2018-10-6 14:36:22

哈哈,这是一个乱弹琴。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4

© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail