勘智k210(MaixDock)开发环境搭建(快速上手)

勘智k210开发环境搭建

本文使用的开发板是sipeed的MaixDock

这个是官方文档(其实官方文档写的蛮清楚的!)
官方文档地址

安装固件

第一步

首先我们先确保有ch340的驱动,随后在官方文档中下载固件,这个固件的网址是github的所有这里贴出百度网盘的链接(1.8.1版本)
百度网盘
提取码:5k39

第二步

下载一下固件,固件不是git上的,国内网可以直接访问。
固件下载地址

勘智k210(MaixDock)开发环境搭建(快速上手)_第1张图片
直接找最下面的这个就可以了。
注意这个是没有lvgl的,下载lvgl可以写界面
这里也贴出百度网盘链接
百度网盘链接
提取码:u34c

第三步

随后打开软件把刚刚下载的.bin的文件放在里面就可以了
勘智k210(MaixDock)开发环境搭建(快速上手)_第2张图片
先把设备连接上再打开软件,随后点击下载,下载完成以后会出现这个界面,就说明固件已经完成了烧录

勘智k210(MaixDock)开发环境搭建(快速上手)_第3张图片

安装IDE

我们下载Maixpy ide
这个网站可以下载
ide官网下载地址
速度还是可以的,下载这个安装包就可以了,下面的那个是不安装可以直接打开的版本(推荐安装包吧)
百度网盘链接
提取码:a65b
勘智k210(MaixDock)开发环境搭建(快速上手)_第4张图片
点开文件进行安装即可

IDE配置

打开软件点击工具选择开发板就行
勘智k210(MaixDock)开发环境搭建(快速上手)_第5张图片
接着我们点击连接再点击运行板子就会自动开始运行了

勘智k210(MaixDock)开发环境搭建(快速上手)_第6张图片若是想板子一上电就能开启这个程序就点击“将脚本保存到开发板就可以了

勘智k210(MaixDock)开发环境搭建(快速上手)_第7张图片

ok环境的搭建就到这里,官方的例程在git上

官方例程

官方例程

这里简单介绍两个

颜色识别

这一段是颜色识别的代码,这个例程是寻找绿色的块

import sensor
import image
import lcd
import time

lcd.init(freq=15000000)
sensor.reset()
sensor.set_pixformat(sensor.RGB565)
sensor.set_framesize(sensor.QVGA)
sensor.run(1)
green_threshold   = (0,   80,  -70,   -10,   -0,   30)
while True:
    img=sensor.snapshot()
    blobs = img.find_blobs([green_threshold])
    if blobs:    
        for b in blobs:
            tmp=img.draw_rectangle(b[0:4]) 
            tmp=img.draw_cross(b[5], b[6]) 
            c=img.get_pixel(b[5], b[6])
    lcd.display(img)

人脸识别

人脸识别是需要刷入人脸识别的固件的
人脸识别固件地址
这个是人脸识别的固件,需要用kflash_gui把固件烧录进去
勘智k210(MaixDock)开发环境搭建(快速上手)_第8张图片
这是用的是0x600000的地址,还有一个0x300000的地址,这个一定要注意。
等他下载完成以后我们打开ide在ide中放入官方例程

import sensor, image, lcd, time
import KPU as kpu
import gc, sys

def lcd_show_except(e):
    import uio
    err_str = uio.StringIO()
    sys.print_exception(e, err_str)
    err_str = err_str.getvalue()
    img = image.Image(size=(224,224))
    img.draw_string(0, 10, err_str, scale=1, color=(0xff,0x00,0x00))
    lcd.display(img)

def main(model_addr=0x300000, lcd_rotation=0, sensor_hmirror=False, sensor_vflip=False):
    try:
        sensor.reset()
    except Exception as e:
        raise Exception("sensor reset fail, please check hardware connection, or hardware damaged! err: {}".format(e))
    sensor.set_pixformat(sensor.RGB565)
    sensor.set_framesize(sensor.QVGA)
    sensor.set_hmirror(sensor_hmirror)
    sensor.set_vflip(sensor_vflip)
    sensor.run(1)

    lcd.init(type=1)
    lcd.rotation(lcd_rotation)
    lcd.clear(lcd.WHITE)

    anchors = (1.889, 2.5245, 2.9465, 3.94056, 3.99987, 5.3658, 5.155437, 6.92275, 6.718375, 9.01025)
    try:
        task = None
        task = kpu.load(model_addr)
        kpu.init_yolo2(task, 0.5, 0.3, 5, anchors) # threshold:[0,1], nms_value: [0, 1]
        while(True):
            img = sensor.snapshot()
            t = time.ticks_ms()
            objects = kpu.run_yolo2(task, img)
            t = time.ticks_ms() - t
            if objects:
                for obj in objects:
                    img.draw_rectangle(obj.rect())
            img.draw_string(0, 200, "t:%dms" %(t), scale=2)
            lcd.display(img)
    except Exception as e:
        raise e
    finally:
        if not task is None:
            kpu.deinit(task)


if __name__ == "__main__":
    try:
        main( model_addr=0x300000, lcd_rotation=0, sensor_hmirror=False, sensor_vflip=False)
        # main(model_addr="/sd/m.kmodel")
    except Exception as e:
        sys.print_exception(e)
        lcd_show_except(e)
    finally:
        gc.collect()

你可能感兴趣的:(k210,ide,单片机,python)