跳到主要内容

未来板Lite板载功能


1 屏幕显示

1.1 全彩像素模式

1.1.1 构建对象class screen.Screen()

from screen import Screen()

screens = Screen()
screens.init()

1.1.2 屏幕背光setBrightness(state)

  • 参数

    • state:int类型,0 关闭 / 1 开启1.1.3 显示方向 1.1.3 显示方向setRotation(dir)
  • 参数

    • state:int类型,0、90、180、270分别控制4个方向进行显示 1.1.4 自动刷新autoRefresh(switch)
  • 参数

    • switch:bool类型,True 自动刷新 / False 关闭自动刷新 1.1.5 刷新显示refresh() 1.1.6 填充显示fill(color)
  • 参数

    • color:rgb元组 1.1.7 清屏clear()1.1.8 点亮像素pixel(x,y,color)
  • 参数

    • x:int类型,横向坐标,范围0~159
    • y:int类型,纵向坐标,范围0~127
    • color:rgb元组 1.1.9 绘制线段line(x1,y1,x2,y2,color)
  • 参数

    • x1:int类型,坐标1的横坐标,范围0~159
    • y1:int类型,坐标1的纵坐标,范围0~127
    • x2:int类型,坐标2的横坐标,范围0~159
    • y2:int类型,坐标2的纵坐标,范围0~127
    • color:rgb元组 1.1.10 绘制圆形circle(x,y,r,color)
  • 参数

    • x:int类型,圆心横向坐标,范围0~159
    • y:int类型,圆心纵向坐标,范围0~127
    • r:int类型,圆形半径
    • color:rgb元组
    • fill:bool类型,颜色是否填充图形 1.1.11 绘制三角形triangle(x1,y1,x2,y2,x3,y3,color,fill)
  • 参数

    • x1:int类型,坐标1的横坐标,范围0~159
    • y1:int类型,坐标1的纵坐标,范围0~127
    • x2:int类型,坐标2的横坐标,范围0~159
    • y2:int类型,坐标2的纵坐标,范围0~127
    • x3:int类型,坐标2的横坐标,范围0~159
    • y3:int类型,坐标2的纵坐标,范围0~127
    • color:rgb元组
    • fill:bool类型,颜色是否填充图形 1.1.12 绘制多边形polygon(x,y,rim,diameter,thickness,skewing,color,fill)
  • 参数

    • x:int类型,中心横坐标,范围0~159
    • y:int类型,中心纵坐标,范围0~127
    • rim:int类型,设置边的数量
    • diameter:int类型,直径
    • thickness:int类型,厚度
    • skewing:int类型,旋转,以中心公转偏移
    • color:rgb元组
    • fill:bool类型,颜色是否填充图形
from future import *
from screen import Screen


screens = Screen()


screens.autoRefresh(False)
screens.fill((0, 0, 0))
screens.polygon(50,50,5,50,3,0,(0, 170, 170),0)
screens.refresh()

1.1.13 显示文本text(text,x,y,size,color)

  • 参数

    • text:str类型,要显示的文本
    • x:int类型,中心横坐标,范围0~159
    • y:int类型,中心纵坐标,范围0~127
    • size:int类型,字号
    • color:rgb元组 1.1.14 显示图片loadimg(path,x,y)
  • 参数

    • path:str类型,图片路径
    • x:int类型,中心横坐标,范围0~159
    • y:int类型,中心纵坐标,范围0~127

1.2 点阵模式

1.2.1 构建对象class future.Matrix()

from future import *

matrix = Matrix()

1.2.2 点阵比例init(x,y)

  • 参数

    • x:int类型,横坐标的像素数量
    • y:int类型,纵坐标的像素数量 1.2.3 显示图标show(t)
  • 参数

    • t:list类型,0 灭 / 1 亮
from future import *

matrix = Matrix()
matrix.show([0,1,0,1,0,1,0,1,0,1,1,0,0,0,1,0,1,0,1,0,0,0,1,0,0])

1.2.4 显示字符> 仅支持55和88的点阵模式

scroll(text)

  • 参数

    • text,str类型,要显示的文本 1.2.5 点亮像素pix(x,y,light)
  • 参数

    • x:int类型,横坐标,范围0~4
    • y:int类型,纵坐标,范围0~4
    • light:int类型,亮度,范围0~255

1.3 海龟绘图

1.3.1 构建对象class turtle.Turtle()

from future import *
from turtle import Turtle

turtles = Turtle()

1.3.2 画笔颜色fillcolor(color)

  • 参数

    • color:rgb元组 1.3.3 抬笔penup()1.3.4 落笔pendown()1.3.5 前进forward(distance)
  • 参数

    • distance:int类型,想要移动的像素 1.3.6 左转left(angle)
  • 参数

    • angle:int类型,旋转角度 1.3.7 右转right(angle)
  • 参数

    • angle:int类型,旋转角度 1.3.8 朝向setheading(angle)
  • 参数

    • angle:int类型,绝对角度 1.3.9 移动到坐标goto(x,y)
  • 参数

    • x:int类型,中心横坐标,范围0~159
    • y:int类型,中心纵坐标,范围0~127 1.3.10 设置x坐标setx(x)
  • 参数

    • x:int类型,中心横坐标,范围0~159 1.3.11 设置y坐标sety(x,y)
  • 参数

    • y:int类型,中心纵坐标,范围0~127 1.3.12 绘制弧度circle(r,angle)
  • 参数

    • r:int类型,半径
    • angle,int类型,角度 1.3.13 画点dot(size)
  • 参数

    • size:int类型,点大小 1.3.14 开始填充&结束填充begin_fill()
      end_fill()
from future import *
from turtle import Turtle

turtles = Turtle()

turtles.clear()
turtles.penup()
turtles.goto(50, 50)
turtles.pendown()
turtles.begin_fill()
turtles.setheading(90)
turtles.forward(20)
turtles.right(90)
turtles.forward(20)
turtles.right(90)
turtles.forward(20)
turtles.right(90)
turtles.forward(20)
turtles.end_fill()

2 板载传感器

2.1 按键

2.1.1 构建对象class sensor.Sensor()

from sensor import Sensor

sensors = Sensor()

2.1.2 检测按下btnValue(btn=None)

  • 参数
    • btn:str类型,'a' 按键A / 'm' 按键M / 'b' 按键M
  • 返回值:
    • 提供参数:bool类型,Ture 按下 / False 未按下;
    • 不提供参数:list类型,返回按下的按键,如A和B同时按下返回 ['a', 'b']

2.2 光线强度

2.2.1 构建对象class sensor.Sensor()

from sensor import Sensor()

sensors = Sensor()

2.2.2 亮度数值getLigh()

  • 返回值:int类型,范围0~4096

2.3 运行时间

time.monotonic()

  • 返回值:double类型,主板运行时间
import time
print(time.monotonic())

2.4 cpu温度

cpu.temperature

  • 返回值,double类型,cpu温度
from microcontroller import cpu
print(cpu.temperature)

2.5 加速度计

2.5.1 构建对象class sensor.Da213()

from sensor import Da213

acc = Da213()

2.5.2 加速度accX()
accY()
accZ()

  • 返回值

    • -2~2 2.5.3 主板姿态gesture(posture)
  • 参数

    • posture:str类型
      • shake:摇晃
      • freefall:自由落体
      • tilt_up:正立
      • tilt_down:倒立
      • tilt_left:左倾
      • tilt_right:右倾
      • face_up:屏幕朝上
      • face_down:屏幕朝下
  • 返回值:bool类型,与传入参数姿态对应时返回true 2.5.4 姿态角俯仰角:pitch()
    翻滚角:roll()

  • 返回值:double类型,返回对应的姿态角度

3 音乐

3.1 构建对象class future.Buzz()

from future import *

buzzer = Buzz()

3.2 频率播放tone(hz,sec)

  • 参数

    • hz:int类型,蜂鸣器频率
    • sec,int类型,持续时间,为-1时持续播放 3.3 音符播放note(note,beat)
  • 参数

    • note:int类型,以音符为单位来设置
    • beat:double类型,以节拍为单位设置延时 3.4 播放旋律melody(music,bpm)
  • 参数:

    • music:str类型,音符组
      以c4:2为例子
      c:英式命名法,代表音调,分别对应着do~xi,一个八度大致分为cdefab这7个调子。
      4:八度,比如4,为第四八度
      :2:持续时间,以bpm=120且四分音符为一拍的默认情况下,1秒2拍=>0.5秒/拍,2则代表着4分音符的一半,所以该c4:2的时长持续为0.25s
      每个音符之间通过空格分隔
    • bpm:int类型,节拍
from future import *

buzzer = Buzz()

buzzer.melody('c4:2 c4:2 g4:2 g4:2 a4:2 a4:2 g4 g4',75)

3.5 播放预置旋律melody(music,bpm)

  • 参数
    • bpm:节拍
    • music:str类型
        - CORRECT
      - NOTICE
      - ERROR
      - BA_DING
      - JUMP_UP
      - JUMP_DOWN
      - POWER_UP
      - POWER_DOWN
      - DADA
      - PUNCHLINE
      - ENTERTAINER
      - ODE
      - WEDDING
      - BIRTHDAY
      - CHASE
      - BLUES
      - PRELUDE
      - NYAN
      - RING
      - FUNK
      - FUNERAL
      - BADDY
      - WAWA
      3.6 停止播放stop()
      信息

      通常与持续播放tone(hz,-1)在一个场景中使用

4 IO端口

4.1 构建对象class future.MeowPin(pin,type)

  • 参数
    • pin:str类型,引脚,可选参数
      • P1
      • P2
      • P3
      • P4
    • type:str类型,设置应交类型,可选参数:
      • IN:数字输入
      • OUT:数字输出
      • PWM:模拟输出
      • ANALOG:模拟输入
from future import *

P1 = MeowPin('P1', 'IN')

4.2 设置引脚数字电平setDigital(level)

  • 参数

    • level:int类型,输出电平,0或1 4.3 获取引脚数字电平getDigital()
  • 返回值:int类型,返回引脚电平 4.4 设置引脚模拟值setAnalog(value)

  • 参数

    • value:int类型,输出模拟值,范围0~4095 4.5 设置模拟输出频率setFrequency(hz)
  • 参数

    • hz:int类型,频率,范围0~122 4.6 读取引脚模拟值getAnalog()
  • 返回值:int类型,范围0~4095

5 彩灯

5.1 构建对象class future.NeoPixel(pin,quantity)

  • 参数
    • pin:str类型,引脚
      • NEOPIX:板载彩灯
      • P1
      • P2
      • P3
      • P4
    • quantity:int类型,菜单数量
from future import *

neopix=NeoPixel('NEOPIX', 3)

5.2 设置彩灯亮度setbrightness(light)

  • 参数

    • light:int类型,范围0~100 5.3 设置单个彩灯颜色setColor(index,color)
  • 参数:

    • index:int类型,彩灯序号
    • color:rgb元组 5.4 设置全部彩灯颜色setColorAll(color)
  • 参数

    • color:rgb元组 5.5 刷新彩灯显示update()
      信息

      设置单个彩灯颜色时需要配合刷新显示才能看到效果

      5.6 预置的彩灯效果breath(neopix)
      flow(neopix)
      rainbow(neopix)
      firefly(neopix)
      blink(neopix)
      heartbeat(neopix)
      brighter(neopix)
      dimmer(neopix)
      危险

      neopix为彩灯对象名

6 执行器

6.1 电机

6.1.1构建对象class future.Motor()

from future import *

motor = Motor()

6.1.2 设置速度setSpeed(index,speed,sec)

  • 参数

    • index:int类型,电机序号1、2
    • speed:int类型,电机速度,范围0~100
    • sec:int类型,秒,如果为0则持续不断 6.1.3 停止电机stopMotor(index)
  • 参数

    • index:index类型,序号,0、1、2,设置为0的时候停止全部电机

6.2 舵机

危险

future中的函数,无需构建对象

6.2.1 设置角度future.geekservo9g(pin,angel)

  • 参数:
    • pin:str类型,引脚
      • NEOPIX:板载彩灯
      • P1
      • P2
      • P3
      • P4
    • angle:int类型,角度,范围-45~255
from future import *

geekservo9g('P1', 90)

7 无线通讯

7.1 构建对象class radio.Radio(channel)

  • 参数:channel:int类型,通讯频道,范围1~13
from uwifi import Radio

radio = Radio(12)

7.2 发送无线消息send(message)

  • 参数

    • message:str类型 7.3 接收无线消息read()
  • 返回值:str类型,未收到消息则为None 7.4 向指定话题发送消息注:同话题用于过滤消息一个积木,与下一个接收积木为一组
    sendForKey(topic,message)

  • 参数

    • topic:str类型,话题名称
    • message:str类型,消息内容 7.5 接收指定话题的消息readForKey(topic)
  • 参数

    • topic:str类型,话题名称

8 麦克风

8.1 构建对象class audio.Audio()

from audio import Audio

au = Audio()

8.2 获取声音强度loudness()

  • 返回值:int类型,声音强度 8.3 识别语音:::warning 需要先连接wifi ::: recognize(vid,sec)

  • 参数

    • vid:int类型,语音类型
      • 1537:普通话
      • 1637:粤语
      • 1737:英文
      • 1837:四川话
    • sec:int类型,语音时长
  • 返回值:str类型,识别结果

9 串口

9.1 构建对象uart.Uart(port,baud)

  • 参数
    • port:str类型
      • uart0
      • uart1
    • baud:int类型
from future import Uart

uart0 = Uart('uart0',115200)

9.2 检查串口是否有数据existData()

  • 返回值:bool类型,串口有数据时候返回true 9.3 读取所有串口数据readAll()

  • 返回值:byte 9.4 读取一行串口数据readLine()

  • 返回值:byte 9.5 读取指定长度的数据readLen()

  • 返回值:byte 9.6 写入数据writeText(data,line)

  • 参数

    • data:str类型
    • line:bool类型,True时换行 9.7 写入字节writeByte(bytes)
  • 参数

    • bytes:字节组

10 WIFI

10.1 构建对象class uwifi.WIFI()

from uwifi import WIFI

wifi = WIFI()

10.2 连接wificonnect(ssid,pwd)

  • 参数

    • ssid:str类型,wifi名
    • pwd:str类型,wifi密码 10.3 wifi连接状态isconnect()
  • 返回值:bool类型,连接成功返回true 10.4 wifi信息Configuration()

  • 返回值:元组 (ip, 子掩码, 网关, dns) 10.5 断开连接disconnect() 10.6 连接mqttmqttConnect(url,id,user,pwd)

  • 参数

    • url:str类型,mqtt服务器地址
    • id:str类型,客户端id(自定义)
    • user:话题用户名
    • pwd:话题密码 10.7 订阅话题subscribe(topic)
  • 参数

    • topic:str类型,话题名称 10.8 读取话题消息getMessage(topic)
  • 参数

    • topic:str类型,话题名称 10.9 发送话题消息publish(topic,message)
  • 参数

    • topic:str类型,话题名称
    • message:str类型,消息内容 10.10 初始化ntp时间initNTP(tz_offset,server)
  • 参数

    • tz_offset:int类型,时区
    • server:str类型,ntp服务器地址 10.11 获取时间getNTPtime(type)
  • 参数

    • type:str类型
      • year
      • mon
      • wday
      • hour
      • min
      • sec
      • yday

方糖系列电子模块


11 数字传感器

11.1 方糖按键模块

11.1.1 构建对象class sugar.Button(pin)

  • 参数:
    • pin:str类型,引脚
from sugar import *

button = Button('P1')

11.1.2 检测按下value()

  • 返回值:bool类型

11.2 PIR人体检测模块

11.2.1 构造对象class sugar.PIR(pin)

  • 参数
    • pin:str类型,引脚
from sugar import *

pir_p1 = PIR('P1')

11.2.2 检测到有人value()

  • 返回值:bool类型

11.3 数字巡线模块

11.3.1 构造对象class sugar.Tracker(pin)

  • 参数
    • pin:str类型,引脚
from sugar import *

tracker_p1 = Tracker('P1')

11.3.2 检测到黑线value()

  • 返回值,bool类型

11.4 霍尔传感器模块

11.4.1 构造对象class sugar.Hall(pin)

  • 参数
    • pin:str类型,引脚
from sugar import *

tracker_p1 = Hall('P1')

11.4.2 检测磁铁value()

  • 返回值,bool类型,检测到的时候为低电平

11.5 碰撞传感器模块

11.5.1 构造对象class sugar.Crash(pin)

  • 参数
    • pin:str类型,引脚
from sugar import *

crash_p1 = Crash('P1')

11.5.2 触发碰撞传感器value()

  • 返回值,bool类型,被触发时候为低电平

11.6 触摸传感器模块

11.6.1 构造对象class sugar.Touch(pin)

  • 参数
    • pin:str类型,引脚
from sugar import *

touch_p1 = Touch('P1')

11.6.2 触发触摸传感器value()

  • 返回值,bool类型,被触发时候为低电平

11.7 LED模块

11.7.1 构造对象class sugar.LED()

from sugar import *

led_p1 = LED('P1')

11.7.2 设置led状态state(type)

  • 参数:

    • type:str类型,ON or OFF 11.7.3 设置百分比亮度brightness(value)
  • 参数:

    • value:int类型

11.8 LED灯串模块

11.8.1 构造对象class sugar.LED()

from sugar import *

ledStrand_p1.state('ON')

11.8.2 设置led灯串状态state(type)

  • 参数:

    • type:str类型,ON or OFF 11.8.3 设置百分比亮度brightness(value)
  • 参数:

    • value:int类型

11.9 红点激光模块

11.9.1 构造对象class sugar.Laser()

from sugar import *

laser_p1 = Laser('P1')

11.9.2 设置led灯串状态state(sta)

  • 参数:
    • sta:str类型,ON or OFF

12 模拟值传感器

12.1 火焰传感器模块

12.1.1 构造对象class sugar.Flame(pin)

  • 参数
    • pin:str类型,引脚
from sugar import *

flame_p3 = Flame('P3')

12.1.2 火焰光照度value()

  • 返回值,int类型,0~4095随着火光强度变换

12.2 电位器模块

12.2.1 构造对象class sugar.Angle(pin)

  • 参数
    • pin:str类型,引脚
from sugar import *

angle_p1 = Angle('P1')

12.2.2 电位器值value()

  • 返回值,int类型,随着旋钮变动

12.3 灰度传感器模块

12.3.1 构造对象class sugar.Grayscale(pin)

  • 参数
    • pin:str类型,引脚
from sugar import *

grayscale_p1 = Grayscale('P1')

12.3.2 灰度值value()

  • 返回值,int类型,灰度越高值越大

12.4 光敏传感器模块

12.4.1 构造对象class sugar.Light(pin)

  • 参数
    • pin:str类型,引脚
from sugar import *

light_p1 = Light('P1')

12.4.2 光照度value()

  • 返回值,int类型,灰度越高值越大

12.5 土壤湿度传感器模块

12.5.1 构造对象class sugar.Soil(pin)

  • 参数
    • pin:str类型,引脚
from sugar import *

soil_p1 = Soil('P1')

12.5.2 土壤湿润度value()

  • 返回值,int类型

12.6 雨滴水位传感器模块

12.6.1 构造对象class sugar.WaterLevel(pin)

  • 参数
    • pin:str类型,引脚
from sugar import *

waterLever_p1 = WaterLevel('P1')

12.6.2 水位value()

  • 返回值,int类型

12.7 声音模块

12.7.1 构造对象class sugar.Sound(pin)

  • 参数
    • pin:str类型,引脚
from sugar import *

sound_p1 = Sound('P1')

12.7.2 声音强度value()

  • 返回值,int类型

12.8 水温传感器模块

12.8.1 构造对象class sugar.DS18X20(pin)

  • 参数
    • pin:str类型,引脚
from sugar import *

ds1 = DS18X20('P1')

12.8.2 获取水温temperature

  • 返回值,double类型(摄氏度)

13 I2C模块

13.1 激光测距模块

13.1.1 构造对象class sugar.TOFDistance()

from sugar import *

tofDis = TOFDistance()

13.1.2 获取距离value()

  • 返回值,int类型(毫米)

13.2 温湿度传感器模块

13.2.1 构造对象class sugar.ENV()

from sugar import *

env1 = ENV()

13.2.2 获取温湿度update()

  • 返回值,元组(double temp,double hum)

13.3 气压传感器模块

13.3.1 构造对象class sugar.ENV2()

from sugar import *

env2 = ENV2()

13.3.2 获取气压read_pres()

  • 返回值,double(百帕) 13.3.3 获取海拔read_altitude()

  • 返回值,double(米) 13.3.4 获取温度read_temp()

  • 返回值,元组(double °C,double °F)

13.4 五向摇杆模块

13.4.1 构造对象class sugar.Joystick()

from sugar import *

joystick = Joystick()

13.4.2 摇杆状态state()

  • 返回值,str类型

    • up
    • down
    • left
    • right
    • pressed 13.4.3 摇杆数值value(type)
  • 参数

    • type:string类型
      • x:横坐标
      • y:纵坐标
  • 返回值,int类型,坐标值

13.5 空气质量传感器

13.5.1 构造对象class sugar.PMSA003I()

from sugar import *

pm = PMSA003I()

13.5.2 杂质浓度read(type)

  • 返回值:元组(douhle pm1.0, double pm2.5, double pm10)

13.6 RFID模块

13.6.1 构造对象class sugar.RFID()

from sugar import *

rfids = RFID()

13.6.2 检测到sd卡scan()[0]

  • 返回值:bool类型 13.6.3 获取卡uiduuid()

  • 返回值:str类型,rfid卡号 13.6.4 写入数据write(address,data)

  • 参数

    • address:int类型,0~46
    • data:str类型 13.6.5 读取数据read(address)
  • 参数

    • address:int类型,0~46

13.7 数码管模块

13.7.1 构造对象class sugar.Nixietube()

from sugar import *

display = Nixietube()

13.7.2 显示数字shownum(number)

  • 参数:

    • number:int类型 13.7.3 在指定位置显示内容showbit(text,index)
  • 参数:

    • text:int类型,显示的数字也可以是"-"
    • index:int类型,位置 13.7.4 显示冒号showDP(1,show)
  • 参数:

    • show:bool类型,启用与否 13.7.5 在指定位置显示小数点showDP(index,show)
  • 参数:

    • index:int类型,位置1~3
    • show:bool类型,是否启用显示 13.7.6 设置亮度intensity(light)
  • 参数

    • light:int类型,0~8 13.7.7 显示状态clear():清除显示
      on():开启显示
      off():关闭显示

14 串口模块

14.1 语音识别模块

14.1.1 构造对象class sugar.SugarASR()

from sugar import *

asr = SugarASR('uart0')

14.1.2 语音识别被触发detected()

  • 返回值:bool类型 14.1.3 识别到唤醒词detected()

  • 返回值:bool类型 14.1.4 识别结果cmd

  • 返回值:str类型,返回识别结果的代号,具体参考
    https://www.yuque.com/kittenbot/hardwares/mgx5l380f73wxpgv 14.1.5 播报语句tts_words(id)

  • 参数

  • 参数

    • number:int类型 14.1.7 播报小数tts_double(decimal)
  • 参数

    • decimal:double类型 14.1.8 播报日期asr.tts_date(y,m,d)
  • 参数

    • y:int类型,年
    • m:int类型,月
    • d:int类型,日 14.1.9 播报时间asr.tts_clock(h,m)
  • 参数

    • h:int类型,时
    • m:int类型,分

14.2 语音合成模块

14.2.1 构造对象class sugar.SugarTTS()

from sugar import *

sugarTTS = SugarTTS('uart0')

14.2.2 模式设置mp3Mode():mp3模式
ttsMode():tts模式 14.2.3 播放操作play():播放、暂停
stop():停止播放
next():下一曲
prev():上一曲 14.2.4 指定名称播放playName(file)

  • 参数

    • file:str类型,文件名要带mp3 14.2.5 播放文件序号playId(id)
  • 参数

    • id:int类型 14.2.6 语音合成playText(text)
  • 参数

    • text:str类型,播报内容

14.3 GPS模块

14.3.1 构造对象class sugar.SugarGPS()

from sugar import *

gps = SugarGPS('uart0')

14.3.2 更新模块数据update() 14.3.3 获取GGA数据getDataGGA(index)

  • 参数

    • index:int类型
        - 7:卫星数量
      - 3:纬度方向
      - 5:经度方向
      - 2:纬度
      - 4:经度
      - 9:海拔高度
      14.3.4 获取VTG数据getDataVTG(index)
  • 参数

    • index:int类型
      • 1:对地真北航向(度)
      • 7:对地速度(千米/小时)
  • 返回值:double类型 14.3.5 获取时间getTime(type)

  • 参数

    • type:int类型
      • 0:时
      • 1:分
      • 2:秒
  • 返回值:int类型