温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

如何在newbit上用micropython

发布时间:2022-01-13 14:38:05 来源:亿速云 阅读:135 作者:iii 栏目:互联网科技

本篇内容主要讲解“如何在newbit上用micropython”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何在newbit上用micropython”吧!

newbit(microbit)支持多种工具,比如JavaScript Block Editor、Mbed、gcc、espruino等。不过我们还是先从最熟悉的micropython开始吧。

准备


首先确定安装好了Mbed串口驱动(注意安装时需要先连接newbit到计算机),这样才能进行后面的工作。在Linux和MacOS上会自动识别出串口,无需安装驱动。

然后运行一个串口终端软件,如putty、mobaxterm等,串口号就是newbit所在,串口参数是MicroPython上标准的115200, n, 8, 1, none。

如果没有下载新的程序到newbit,里面还是原有的例程,那么可以直接使用micropython。在终端软件中输入ctrl-c,就会中止当前的程序,返回到REPL下。如果下载过其它程序,那么原有的micropython固件就可能被冲掉了,需要下载micropython固件,并将它下载到newbit中。

下载新固件后,需要按下反面的复位键,就可以在终端上看到熟悉的REPL提示界面了。

  1. MicroPython v1.7-9-gbe020eb on 2016-04-18; micro:bit with nRF51822

  2. Type "help()" for more information.

  3. >>>

  4. >>>

在REPL下,我们可以输入各种指令、代码,执行多种功能。这些大家可以参考以前的《micropython中文教程2.0》,就不重复了。

不过可能大家会发现micropython的版本很低,还是1.7.9版本,而现在最新版已经是1.8.7了。这是因为官方一直没有更新micropython文件,而且新版本的体积比较大,nRF51822中多半放不下了。目前的micropython中留给用户的空间只有8K,这还是蓝牙功能没有包含的情况下。估计要等升级到nRF58400时,才可能替换micropython了。

注意:这个版本的micropython有个问题是粘贴功能有bug,不能粘贴较大的代码,否则就会出错,需要断开USB重新连接才能恢复。

图形显示

newbit上有一个 5x5 的LED阵列,可以显示小图形、文字,显示效果不错。

在micropython中,已经为LED设计了专用的库,可以很方便的进行显示,大部分时候只要一个命令就完成了显示功能。例如,下面代码显示了滚动的文字 Hello ,World!:

  1. from microbit import *

  2. display.scroll("Hello, World!")

如何在newbit上用micropython

这是以默认速度显示,如果想加快或变慢速度,可以加上参数delay,如:

  1. display.scroll("Hello, World!", delay=50)

默认的delay是150,设置成50后滚动速度会变快。

如果希望循环显示,可以加上loop参数,这时只能通过ctrl-C才能返回REPL。

  1. display.scroll("Hello, World!", loop=True)

默认显示的字符是非等宽的,在有些时候会不方便。这时可以使用等宽字体:

  1. display.scroll("Hello, World!", monospace=True)

默认情况下,display.scroll函数在完成显示后才会返回,相当于工作在阻塞模式。也可以改为非阻塞模式,这样输入命令后,显示可以在后台进行,而REPL可以继续输入其它命令。阻塞和非阻塞通过参数wait指定。

  1. display.scroll("Hello, World!", wait=False)

  • display.scroll函数是不支持中文和特殊字符

  • 注意在microbit的micropython中,没有pyb、machine等常用模块,而是使用microbit库。


display.scroll只能显示文字,如果需要显示图形,就要改用另外一个函数display.show,它可以显示文字、图形,但是不能以滚动方式显示,只能一次显示一个图标或者字符。如:

  1. display.show("Hello, World!")

  2. display.show(Image.HEART)

microbit库中内置了数十个图标,可以显示常用的表情、时钟、箭头等,大家可以通过dir或者tab键查看内置的图标。

display.show函数也支持delay、loop、wait等参数,和display.scroll函数差不多。但是display.show还有一个特殊功能,支持一次显示一组图标,如:

  1. display.show((Image.YES, Image.NO, Image.MEH))

除了内置的图形,我们还可以定义自己的图形,如:

  1. ico=Image('11111:12345:13579:50000:90000')

  2. display.show(ico)

每个图形需要定义5个参数,每个参数之间用冒号隔开,一个参数有5个数字,代表1行的5个LED,每个数字代表LED的亮度。

我们还可以直接操作每个LED,如:

  1. display.set_pixel(1, 1, 2)

前两个参数是X/Y坐标,第3个参数是亮度(0-9,数字越大越亮)。同样可以用display.get_pixel函数读取LED的亮度。

其它常用函数:

  • 清屏,display.clear()

  • 关显示(不清屏),display.off()

  • 开显示,display.on()

到此,相信大家对“如何在newbit上用micropython”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI