0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

K210上快速开发、低成本的MicroPython 解释器MaixPy介绍

40°研究院 来源:40°研究院 作者:40°研究院 2022-12-22 17:19 次阅读

一、关于 MaixPy#

MaixPy 是将 Micropython 移植到 K210(一款 64 位双核带硬件 FPU、卷积加速器、FFT、Sha256 的 RISC-V CPU ) 的一个项目; MaixPy 不但支持 MCU 常规操作, 还集成了硬件加速的 AI 机器视觉和麦克风阵列相关的算法。相应的高达 1TOPS 算力核心模块却不到¥50, 凭借着快速开发和较低成本与其较小的体积很适合 AIOT 领域智能应用

MicroPython 是基于 Python3 的语法做的一款解析器,包含了 Python3 的大多数基础语法, 主要运行在性能和内存有限的嵌入式芯片上。(注意 Micropython 不包含 Python3 的所有语法)

MaixPy 让我们在 K210 上编程更加简单快捷, 我们也将源代码开源在 github 上

使用 MaixPy 可以做很多有趣的事情

二、简洁的代码实例#

比如我们需要扫描 I2C 总线上的设备,不需要复杂的开发环境和工程,只需要通过串口发送如下代码即可实现:

from machine import I2C                          # 导入内置库

i2c = I2C(I2C.I2C0, freq=100000, scl=28, sda=29) # 定义一个I2C对象, 使用I2C0, 频率100kHz,SCL引脚是IO28, SDA 引脚是IO29
devices = i2c.scan()                             # 调用函数扫描设备
print(devices)                                   # 打印设备

Copy

同样,我们需要实现一个呼吸灯,只需要如下代码:

board_info 与板卡相关,不同板卡配置不同,使用前需要手动配置。

from machine import Timer,PWM
from board import board_info
import time

tim = Timer(Timer.TIMER0, Timer.CHANNEL0, mode=Timer.MODE_PWM)
ch = PWM(tim, freq=500000, duty=50, pin=board_info.LED_G)
duty=0
dir = True
while True:
    if dir:
        duty += 10
    else:
        duty -= 10
    if duty>100:
        duty = 100
        dir = False
    elif duty<0:
        duty = 0
        dir = True
    time.sleep(0.05)
    ch.duty(duty)

Copy

实时拍照

import sensor
import image
import lcd

lcd.init()
sensor.reset()
sensor.set_pixformat(sensor.RGB565)
sensor.set_framesize(sensor.QVGA)
sensor.run(1)
while True:
    img=sensor.snapshot()
    lcd.display(img)

Copy

AI 物体检测:

import KPU as kpu
import sensor

sensor.reset()
sensor.set_pixformat(sensor.RGB565)
sensor.set_framesize(sensor.QVGA)
sensor.set_windowing((224, 224))

model = kpu.load("/sd/mobilenet.kmodel")  # load model
while(True):
    img = sensor.snapshot()               # take picture by camera
    out = kpu.forward(task, img)[:]       # inference, get one-hot output
    print(max(out))                       # print max probability object ID

Copy

please read doc before run it!

三、这篇文档的内容#

所有关于 MaixPy 的内容, 包括:

如何选择并得到一款合适自己的模块或者开发板

如何开始上手使用

库和接口(API)文档查询

详细的一步一步手把手教程

来自社区的分享(教程或开源项目)

为了在学习过程中避免遇到难以解决的问题,请务必按照左边目录结构从上到下阅读,特别是写在前面的章节,不要跳过

审核编辑 黄昊宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • RISC-V
    +关注

    关注

    41

    文章

    1908

    浏览量

    45078
  • Micropython
    +关注

    关注

    0

    文章

    68

    浏览量

    4598
收藏 人收藏

    评论

    相关推荐

    K210快速上手教程(色块、人脸、声源识别等)相关资料推荐

    k210实现各种功能快速上手前言开发环境以及材料准备软件Maixpy IDE使用说明识别色块并且串口输出最大色块中心坐标声源方向的坐标识别前言最近想要做一个项目是涉及到目标识别的,我想
    发表于 07-01 07:54

    请教大神如何生成k210适用的各种固件?

    为什么不建议用maixpy生成k210适用的各种固件?如何生成k210适用的各种固件?有哪些步骤?
    发表于 07-06 07:24

    什么是k210K210如何快速上手?

    什么是k210K210如何快速上手?
    发表于 10-13 06:45

    请问K210maixpy固件下复位需要多长时间?

    请问K210maixpy固件下复位需要多长时间?
    发表于 02-16 07:53

    如何去实现基于K210的MNIST手写数字识别

    基于K210的MNIST手写数字识别硬件平台采用Maixduino开发板在sipeed官方有售软件平台使用MaixPy环境进行单片机的编程 官方资源可在这里下载 链接: [link]http
    发表于 02-17 07:35

    K210开发板的裸机开发基础教程分享

    本文作为K210开发板的裸机开发基础教程,权威请参考嘉楠官方的开发手册。文章中问题在所难免,欢迎讨论~文章目录基础例程点亮LED灯1. SDK中对应的API2. 步骤双核并行1. SD
    发表于 02-28 06:46

    k210开发资料

    各位大佬,求k210开发资料
    发表于 09-13 06:54

    求分享K210芯片及模组资料

    最近希望基于K210做现有产品的升级替代的预研工作,故希望得到K210相关资料,最好包括K210芯片和模组的的,谢谢!
    发表于 09-13 06:44

    请问怎么用KendryteIDE编译c++开发k210

    请问怎么用KendryteIDE编译c++开发k210
    发表于 09-14 08:58

    求助,求K210开发板测试参考程序,MDK5开发

    您好,本人小白一枚,想学习一下K210开发板的使用。求K210开发板测试参考程序,MDK5开发的。顺带能否发一下包括
    发表于 09-15 07:42

    亚博智能K210开发板学习笔记

    亚博智能K210开发板学习笔记
    发表于 12-08 15:06 44次下载
    亚博智能<b class='flag-5'>K210</b><b class='flag-5'>开发</b>板学习笔记

    [测试贴]K210maixpy固件下,复位需要多长时间?

    maixpy固件的k210上电后会init,并串口log一些信息,以这个log开始的时间来当做maixpyk210复位时间比较合理)。首先,先单独测试下,RST引脚拉高的一个时间可以
    发表于 12-20 19:09 9次下载
    [测试贴]<b class='flag-5'>K210</b>在<b class='flag-5'>maixpy</b>固件下,复位需要多长时间?

    Micropython解释MaixPy 常见问题

    MaixPy 是基于 Micropython 的脚本语言, 不需要编译,在运行时解析,编写起来更简单方便,只是运行时时实性不如 C 语言。
    的头像 发表于 12-22 17:21 8734次阅读
    <b class='flag-5'>Micropython</b><b class='flag-5'>解释</b>器<b class='flag-5'>MaixPy</b> 常见问题

    【01Studio x 嘉楠科技】CanMV K210 AI开发板全网首发,千套开发板限时优惠!

    CanMV开源项目由 嘉楠科技(Canaan)官方创建和维护。该项目借鉴了OpenMV和MaixPy,是将MicroPython移植到嘉楠科技边缘计算AI芯片K210(一款64位双核带硬件FPU
    的头像 发表于 10-12 15:25 2350次阅读
    【01Studio x 嘉楠科技】CanMV <b class='flag-5'>K210</b> AI<b class='flag-5'>开发</b>板全网首发,千套<b class='flag-5'>开发</b>板限时优惠!

    使用K210和Arduino IDE/Micropython进行图像识别

    电子发烧友网站提供《使用K210和Arduino IDE/Micropython进行图像识别.zip》资料免费下载
    发表于 06-25 11:02 6次下载
    使用<b class='flag-5'>K210</b>和Arduino IDE/<b class='flag-5'>Micropython</b>进行图像识别