Kittenbot 小喵科技——专注图形化编程教育

快捷导航
查看: 2118|回复: 4

[Microbit] 小白发现之micropython(一) microbit 按钮控制

[复制链接]

15

主题

32

帖子

270

积分

版主

Rank: 7Rank: 7Rank: 7

积分
270
发表于 2019-3-24 23:02:56 | 显示全部楼层 |阅读模式
闲来无事,用面包板配合瞬时按钮(与microbit上自带的A、B按钮一样)折腾了下,发现按下的时候,可以模拟读出数据2。这样的话配合IOBIT扩展板,就可以得到9个按钮操作了:A、B、A+B、pin0、1、2、3、4、10。其中pin3、4、10需要关闭屏幕显示(与屏显复用)。

用pin3的模拟读和pin8的数字写,做了个类似arduino下的blink示例

from microbit import *
display.off()
while True:
    if pin3.read_analog() == 2:
        pin8.write_digital(1)
        sleep(500)
        pin8.write_digital(0)
        sleep(500)
    else:
        pin8.write_digital(0)


P.S. 接线方式:pin3和接地接面包板上按钮的两个引脚。pin8接LED阳极,LED阴极串联一个220欧的电阻,电阻另一端接地。
回复

使用道具 举报

3

主题

9

帖子

69

积分

热心会员

Rank: 2

积分
69
发表于 2019-3-25 09:23:46 | 显示全部楼层
点赞,哈哈哈
回复 支持 反对

使用道具 举报

32

主题

72

帖子

445

积分

超级版主

Rank: 8Rank: 8

积分
445
发表于 2019-3-26 10:07:31 | 显示全部楼层
何不试试?
from microbit import *
display.off()
pin = pin3
pin.set_pull(pin.PULL_UP)
while True:
    if pin.read_digital():
        pin8.write_digital(1)
        sleep(500)
        pin8.write_digital(0)
        sleep(500)
    else:
        pin8.write_digital(0)
回复 支持 反对

使用道具 举报

15

主题

32

帖子

270

积分

版主

Rank: 7Rank: 7Rank: 7

积分
270
 楼主| 发表于 2019-3-26 15:40:16 | 显示全部楼层
hogam 发表于 2019-3-26 10:07
何不试试?
from microbit import *
display.off()

等晚上回去试试。
回复 支持 反对

使用道具 举报

188

主题

447

帖子

1838

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1838
发表于 2019-4-1 17:19:55 | 显示全部楼层
Microbit的数字读比较特别,不同于Arduino那种数字读,一定用了数字读,一定要设置设置引脚的上下拉,否则假如引脚接了按键进行使用,只读一次后按键就在没有反应了。

同样Microbit在Micropython中也需要设置引脚的上下拉
回复 支持 反对

使用道具 举报

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

本版积分规则

全力为Stem教育行业提供新技术、新方案和新产品。

 

地址:广东省深圳市华丰互联网+创意园 419~420

© 2019 Kittenbot Inc. 深圳市小喵科技有限公司 ( 粤ICP备16110073号 )

GMT+8, 2020-6-2 04:22 , Processed in 0.026576 second(s), 34 queries , Gzip On.
Powered by Discuz! X3.2

快速回复 返回顶部 返回列表