网站建设过程中什么最重要,设计字体设计,推广平台赚钱,简历模板制作神器目录
一、前言
二、硬件
1、 组装
2、引脚
三、软件
1、驱动安装
2、软件安装
①是kflash_gui 这个是用来下载固件的
②是MaixPy IDE 这个是用来运行程序的
3、固件下载
4、软件和MaixHub网站使用
1、MaixPy IDE
①连接K210开发板 ②运行程序后
2、kflash
3、…目录
一、前言
二、硬件
1、 组装
2、引脚
三、软件
1、驱动安装
2、软件安装
①是kflash_gui 这个是用来下载固件的
②是MaixPy IDE 这个是用来运行程序的
3、固件下载
4、软件和MaixHub网站使用
1、MaixPy IDE
①连接K210开发板 ②运行程序后
2、kflash
3、MaixHub
5、程序
1、与stm32串口通信 一、前言 学习K210可以查看官方文档 MaixPy 文档简介 - Sipeed Wiki 官网中包含了各种应用的下载地址以及相关程序打开后在左侧有目录点开入门必看指南在左侧目录可以找到软件固件的下载链接点开库函数 API 手册在左侧目录点开Maix会找到GPIO的配置方法点开media 有摄像头屏幕以及视觉的配置方法之后会用到比如识别数字是需要训练模型则需要MaixHub该网站来训练此文后面会有介绍 也可以选择看【K210】K210学习笔记总_k210与匿名飞控_欠羽的博客-CSDN博客 也可以看这个比较简洁Maix Bit、K210超详细资料【保姆级教程】【学习与上手Maix Bit这一篇文章就够啦】_动态比特的博客-CSDN博客 也可以借鉴OPENMV的相关程序本人感觉OPENMV的程序初学者可能更能看懂 以下是官网例程 巡线小车 · OpenMV中文入门教程 也可以根据此文来准备环境以及会有相关程序 二、硬件 1、 组装 ①可以点击链接看视频
[maixbit] K210 产品开箱及预览功能_哔哩哔哩_bilibili ②也可以看下图 maix bit打开后 然后在另一边安装LCD就可以了LCD也可以不安装LCD是为了在脱机运行时能显示相关内容 以下是安装完成时的样子 上电后是这样 图中两个圆圈处会有两个按键 一个是rest,一个是boot 首先按一下rest 然后一直按着boot就能把摄像头看到的显示在LCD上了 以后写程序时boot可以当作一个普通按键来使用
2、引脚
0-3号引脚上是JTAG
4、5号引脚为默认串口
12-14号是RGB灯
16号引脚是BOOT键接了10kΩ的上拉电阻
18-20号引脚接的是麦克风
26-28号引脚是用SPI协议实现的的读写TF card功能。 IO引脚都是3.3VReset引脚电压为1.8V。 三、软件 1、驱动安装 到下面这个链接选择你的板子型号来下载驱动
安装 USB 驱动 - Sipeed Wiki
2、软件安装 目前我只使用到了两个软件
①是kflash_gui 这个是用来下载固件的
Releases · sipeed/kflash_gui · GitHub这个是下载链接打开之后一般选择最新版本我现在这个是v1.8.1选择系统对应的应用下载我的电脑是windows系统因此我选的是以下名称的也可以直接点下面的链接下载解压到一个文件夹双击 kflash_gui.exe(/kflsh_gui) 即可运行
kflash_gui_v1.8.1_windows.7z
②是MaixPy IDE 这个是用来运行程序的
下载站 - Sipeed 点开链接后直接下载.exe结尾的应该就可以时间久了当时下的很乱有点忘了
3、固件下载 到下面这个链接可以来选择固件下载 点开的界面应该是版本号的选择一般点最上面那个就可以点开之后就可以选择固件下载了固件为 .bin 结尾或者 .kfpkg 的文件其中.kfpkg其实就是多个.bin文件的打包版本, 可以使用kflash_gui打包 下载站 - Sipeed此链接是用来下载固件的即上面所说的链接
更新 MaixPy 固件 - Sipeed Wiki此链接包含对固件内容的简介打开后需往下翻查找
4、软件和MaixHub网站使用
1、MaixPy IDE
①连接K210开发板 先选择开发板
再点击 左下角的绿色的链接似的东西
连接成功后会变成以下样子
注意以下界面并不会长时间显示如果长时间显示那么有可能开发板没有选对
②运行程序后
可以点击此处会弹出你所想打印的东西
点击左侧红圈处可以看到摄像头点击右侧红圈可以放大缩小屏幕上的摄像头画面
2、kflash
打开后 第一个圈可以选择下载或者擦除下次下载前必须要擦除之前下载在该位置的文件或者选择擦除所有
第二个圈是选择下载的位置0x000000一般是最基础的固件储存的位置这个数一般也不需要改因为之后要往里面存东西一般是需要SD卡内存卡的
第三个圈是选择端口要选择括号内带USB的才能下载成功
3、MaixHub 打开后是以下界面点击开始训练就可以开始训练你的模型点击模型库的查看可以查看别人训练好的模型择需下载 再打开新建训练 选择图像检测 点击数据集 点击创建数据集也可以选择之前创建的数据集 创建后点击查看然后点击上传图片 最后点击标注数据不用对数据分组网站会自动分的照片的数量越多越准确 标注完所有数据后后点击最上面的模型训练选择刚刚创建的训练任务然后点击创建任务选择刚刚的数据集按照图中所示配置即可创建任务开始训练了。 最后点击部署手动部署就可以了 5、程序
1、与stm32串口通信
K210可以使用uart1.write(astr(b.cx())b)来传输但是传输的为字符串所以stm32端接收到的为字符串需要用到atoi()函数来转换
stm32接收部分具体可以看CSDN里程序中的串口那一部分
以下是寻找色块并发送a色块的横坐标b的例子 # 色块监测 例子
# 这个例子展示了如何通过find_blobs()函数来查找图像中的色块import sensor, image, time,lcd
from fpioa_manager import fm # 从 fpioa_manager 模块中导入 引脚注册模块 fmfrom machine import Timer, PWM, UART # 从 machine 模块中导入 定时器模块 Timer 脉宽调制模块 PWM 双向串行通信模块 UART# 颜色追踪的例子一定要控制环境的光保持光线是稳定的。
green_threshold (0, 10, -128, 39, -11, 122)#电赛黑色胶带#_________________________________________________________________
# 串口的使用
# 串口1 设置 P9 RX P6 TXfm.register(9, fm.fpioa.UART1_RX, force True) # 配置 9 脚为 UART1_RX 强制注册
fm.register(6, fm.fpioa.UART1_TX, force True) # 配置 6 脚为 UART1_TX 强制注册uart1 UART(UART.UART1, 921600, 8, 0, 1) # 设置 uart1 为 串口1 波特率 921600 数据位 8位 校验位 0位 停止位 1位#__________________________________________________________________
lcd.init() # lcd初始化
#__________________________________________________________________
sensor.reset() # 初始化摄像头
sensor.set_pixformat(sensor.RGB565) # 格式为 RGB565.
sensor.set_framesize(sensor.QQVGA) # 使用 QQVGA 速度快一些
sensor.skip_frames(time 2000) # 跳过2000s使新设置生效,并自动调节白平衡
sensor.set_auto_gain(False) # 关闭自动自动增益。默认开启的在颜色识别中一定要关闭白平衡。
sensor.set_auto_whitebal(False) #关闭白平衡。白平衡是默认开启的在颜色识别中一定要关闭白平衡。
clock time.clock() # 追踪帧率
#__________________________________________________________________while(True):clock.tick() # Track elapsed milliseconds between snapshots().img sensor.snapshot() # 从感光芯片获得一张图像blobs img.find_blobs([green_threshold], invertFalse,left_roi [0,0,160,240] ,area_threshold100,mergeTrue)#find_blobs(thresholds, invertFalse, roiAuto),thresholds为颜色阈值#是一个元组需要用括号 括起来。invert1,反转颜色阈值invertFalse默认#不反转。roi设置颜色识别的视野区域roi是一个元组 roi (x, y, w, h)代表#从左上顶点(x,y)开始的宽为w高为h的矩形区域roi不设置的话默认为整个图像视野。#这个函数返回一个列表[0]代表识别到的目标颜色区域左上顶点的x坐标1代表#左上顶点y坐标2代表目标区域的宽3代表目标区域的高4代表目标#区域像素点的个数5代表目标区域的中心点x坐标6代表目标区域中心点y坐标#7代表目标颜色区域的旋转角度是弧度值浮点型列表其他元素是整型#8代表与此目标区域交叉的目标个数9代表颜色的编号它可以用来分辨这个#区域是用哪个颜色阈值threshold识别出来的。if blobs:#如果找到了目标颜色for b in blobs:#迭代找到的目标颜色区域# Draw a rect around the blob.img.draw_rectangle(b[0:4]) # rect#用矩形标记出目标颜色区域img.draw_cross(b[5], b[6]) # cx, cy#在目标颜色区域的中心画十字形标记print(b.cx())uart1.write(astr(b.cx())b)#发送a 角度 b#注意与上面的uart1一致lcd.display(img)#LCD显示#print(clock.fps()) #如果断开电脑帧率会增加