课程0-Python编程环境

您当前位置: 首页 > micro:bit智能小车 > 5.micro-Python教程

2.导入buildingbit库.zip  点击下载

MU离线编程软件点击下载


Python有两种编程方式,分为离线和在线,首先我们来试一下在线编程,其中小车前进实验需要导入python库文件,必须要使用离线编程。

一、在线编程

1.如图0-1进入micro:bit官网,官网网址:http://microbit.org/

blob.png

                图0-1

2.如图0-2点击Let's Code,再下滑至如图0-3位置选择Python Editor板块的Let's Code

blob.png

                图0-2

blob.png

                图0-3

3.如图0-4显示的就是Python编辑器了。

blob.png

                图0-4

4.可以看到编辑区域的上方有一些按键如图0-5,这些按键的含义如下:

blob.png

                图0-5

 

 

 

blob.pngDownload:单击“Download”按钮,会在你的计算机上保存一个特殊的“hex”文件。将micro USB数据线连接micro:bit与电脑,并将新保存的文件拖放到micro:bit设备中。代码将在micro:bit上运行(或者是看到一个错误消息滚动在micro:bit的点阵上)。

 

 

blob.pngSave:点击“Save”按钮将代码以“py”的格式保存到你的电脑。

 

 

 

 

 

blob.pngLoad:从电脑中加载程序文件,可以是“hex”文件,也可以是“py”文件,点击“Load”按钮,会出现如图0-6的灰色区域,把代码文件拖动到灰色区域即可打开程序文件,或者也可以直接点击下面的“Or pick a file”,从计算机选择程序文件并打开。

 

 

blob.png

                图0-6

blob.pngSnippets:点击“Snippets”按钮,就会弹出一个Python代码片段的程序菜单。对于一些常见的函数,都有一些代码片段。可以选择你所需要的代码片段,并填写代码编辑器中的空白,以使其实现我们需要的功能。

 

 

 

 

 

 

blob.pngHelp:点击“Help”按钮将在浏览器中打开一个新的标签,用于说明Python编辑器的使用。

 

 

 

blob.png+-:点击“+”按钮可以放大代码,反之点击“-”可以缩小代码。

 

5.接下来我们试一下将代码下载到micro:bit,例如我们需要实现在micro:bit点阵上显示Hello, World!的代码,可以在编辑区域编写如图0-7的代码,然后将micro USB数据线连接micro:bit与电脑,如0-7 点击Download下载代码到micro:bit中。

blob.png

                图0-7

点击Download以后将会出现一个下载任务,点击“浏览”,如图0-8将下载的内容下载到micro:bit中。

blob.png

                图0-8

点击下载以后,可以观察到micro:bit位置如图0-9的指示灯在闪烁,此时表示正在下载程序。

blob.png

        图0-9

等到指示灯常亮以后,表示程序下载成功,此时可以看到可以看到micro:bit的点阵上缓慢的向左移动一行英文,“Hello, World!”,如图0-10、图0-11所示。

blob.pngblob.png

        图0-10              0-11

 

二、离线编程方式

离线Mu下载地址:https://codewith.mu/

1.打开一个浏览器,将离线Mu下载地址输入网址栏并打开,如图0-12点击“Download now”。

blob.png

0-12

 

2.   接下来会跳转到选择界面,如图0-13选择你当前的电脑系统点击下载,有三个选项可供选择,依次是WindowsOSXLinux

blob.png

0-13

3.下载以后运行Mu,如图0-14所示:

blob.png

0-14

我们可以看到有一个大窗口的编辑区域,编辑区域的上方还有一些按钮如图0-15所示,这些按钮的含义分别是:

blob.png

0-15

 

blob.pngLoad:从电脑中加载“py”程序文件。

 

 

 

 

blob.pngSave:点击“Save”按钮将代码以“py”的格式保存到你的电脑。

 

 

 

 

 

blob.pngFlash:micro USB数据线连接micro:bit与电脑,点击“Flash”按钮,代码将在micro:bit上运行或者是看到一个错误消息滚动在micro:bit的点阵上 

blob.pngZoom-in:点击“+”按钮可以放大代码 

blob.pngZoom-out:点击“-”按钮可以缩小代码。

blob.pngTheme:点击“Theme”可以切换白天或黑夜主题。

blob.pngCheck:在代码编写完成以后,点击“Check”按钮检查代码是否有错误。

blob.pngHelp:点击Help”按钮会在浏览器弹出一个能给你提供一些帮助的页面。

blob.pngQuit:点击“Quit”按钮,可以关闭Mu软件,关闭之前Mu会确保你已经保存了你的程序文件。

 

 

 

3.   接下来我们试一下将代码下载到micro:bit我们可以直接在编辑区域输入代码,例如我们需要实现在micro:bit点阵上移动显示Hello, World!,如图0-16输入代码

from microbit import *
display.scroll("Hello, World!")

 

特别注意事项:

关于程序编写语法与大小写要求:

1 - 大小写必须正确!

2 - 拼写必须严格正确!

3 - 关键词如 # 与内容之间需要有个空格

4 - 程序以一行空白程序结尾

5 - 程序块体(如 while 所包含的程序体是以缩进为标志的),相对于C语言,Python完全省去了大括号(连同后缀的分号),并使用缩进结构来表示所属关系。

blob.png

                图0-16

代码编写好之后我们可以点击大拇指图标的Check键检查一下我们的代码是否有错误,如图0-17所示。

blob.png

                图0-17

检查以后未出现光标或下划线,表示代码没有错误,接下来将程序下载到micro:bit中,首先将micro USB数据线连接micro:bit与电脑,接着如图0-18点击Flash按键。

blob.png

                图0-18

点击Flash键后,可以观察到micro:bit位置如图0-19的指示灯在闪烁,此时表示正在下载程序。

blob.png

                图0-19

等到指示灯常亮以后,表示程序下载成功,同时Mu上会出现如图1-20的提示,直接点击OK即可。

blob.png

                图0-20

程序下载成功以后,可以看到micro:bit的点阵上缓慢的向左移动一行英文,Hello, World!,如图0-21、图0-22所示。

blob.pngblob.png

        图0-21                0-22

二、下载buildingbit库

1.首先用microUSB数据线连接电脑与microbit主板。

2.把buildingbit的库文件放在C:UsersAdministratormu_code文件夹下。

这里以V1.2版本的为例。

image.png

3.右键点击buildingbit_micropython_V1.2.hex文件,然后选择发送到microbit主板上。

image.png

二、检测与验证

1.下载完成库文件完成后,打开MU软件,点击REPL按钮,在下方弹出的窗口中可以看到buildingbit字样。如果没有看到buildingbit的信息,请重新插拔一下microbit主板并重新下载buildingbit的库文件。

image.png

2.下载了buildingbit的库后,下次用MU下载程序不需要再次下载,重新插拔microbit主板也会保留库文件,但是当下载图形化的hex程序时,会刷新buildingbit的库,变成官网的microbit的库,所以建议不要和图形化的程序混合下载。


三、buildingbit库API简介

导入库  :import buildingbit

 

1、小车前进  buildingbit.car_run(100, 100, 0) 

    参数: 左轮速度(0-255),右轮速度(0-255), 延时时间(ms)

   

2、小车后退     buildingbit.car_back(100, 100, 0)

   参数: 左轮速度(0-255),右轮速度(0-255), 延时时间(ms)

  

3、小车左转   buildingbit.car_left(100, 0)

   参数: 右轮速度(0-255), 延时时间(ms)

  

4、小车右转     buildingbit.car_right(100, 0)

   参数: 左轮速度(0-255), 延时时间(ms)

  

5、小车左旋    buildingbit.car_spinleft(100, 100, 0)

   参数: 左轮速度(0-255),右轮速度(0-255), 延时时间(ms)

  

6、小车右旋    buildingbit.car_spinright(100, 100, 0)

     参数: 左轮速度(0-255),右轮速度(0-255), 延时时间(ms)

     

7、小车停止    buildingbit.car_stop()

 

8、小车大灯    buildingbit.car_HeadRGB(255, 255, 255)

   参数: R(0-255)  G(0-255)  B(0-255)

 

9、超声波返回距离  buildingbit.ultrasonic()

   返回距离值(cm) 

 

10、避障传感器   buildingbit.avoid_sensor()

     返回: 有障碍物返回true,无障碍返回false

     注意:用此函数时,必须关闭点阵显示,否则会冲突(microbit.display.off())

 

11、左巡线传感器  buildingbit.traking_sensor_L()

   返回: 黑线返回true,白线返回false (巡线指示灯会黑线会亮)

 

12、右巡线传感器  buildingbit.traking_sensor_R()

   返回: 黑线返回true,白线返回false (巡线指示灯会黑线会亮)

 

13、舵机控制  buildingbit.servo(1, 180)

   参数: 舵机编号(1-3)舵机角度(0-180)

  

14、红外遥控初始化 buildingbit.init_IR(pin8)

   参数:红外接的引脚

  

15、 返回红外按键值 buildingbit.get_IR(pin8)

   参数:红外接的引脚

 

 

B.导入手柄库

import ghandle

 

ghandle.B1_is_pressed()

功能:按键B1(红色),按下返回True,松开返回False

 

ghandle.B2_is_pressed()

功能:按键B2(绿色),按下返回True,松开返回False

 

ghandle.B3_is_pressed()

功能:按键B3(蓝色),按下返回True,松开返回False

 

ghandle.B4_is_pressed()

功能:按键B4(黄色),按下返回True,松开返回False

 

ghandle.rocker(state)

功能:检测摇杆方向,与参数一致返回True,不一致返回False

参数:state:ghandle.up(向上),ghandle.down(向下),ghandle.left(向左),

             ghandle.right(向右),ghandle.pressed(按下),ghandle.noState(无操作)

 

ghandle.get_value_x()

功能:返回摇杆X通道的模拟值,左右移动数值会有变化,向左增加,向右减少

 

ghandle.get_value_y()

功能:返回摇杆Y通道的模拟值,上下移动数值会有变化,向上减少,向下增加

 

注意:buildingbit-micropython的库是在官方microbit-microPython的库上增加了buildingbit套件的驱动,其他的API可以到microbit-microPython官网上查阅。

https://microbit-micropython.readthedocs.io/en/latest/