欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

【openmv】openmv各种bug问题记录

程序员文章站 2022-08-06 21:03:04
一 已解决的bug二 未解决的bug1.不影响运行,未知原因uh oh, no preference for overlappingdetection2.按键外部中断,也不怎么影响...

一 已解决的bug

(一)python语言使用错误

1.for循环后未加冒号/def 函数后未加冒号/缩进不对

SyntaxError: invalid syntax

例子:

def callback_PIN1(line)#这里应该有:冒号 global flag_key2 #print("line =", line) flag_key2=1 pyb.delay(10)

2.使用未定义过的变量

NameError: name 'b' isn't defined

(二)基于openmv的bug

1.超内存

解决:使用qqvga等更小的图像尺寸

2.硬件引脚冲突(常见显示屏舵机串口iicspi等用太多的情况)

解决:舵机扩展板、看原理图换引脚

3.画面偏红/偏色

一般是由于初始化引起的,(不排除红外线/激光影响)
解决:初始化时给一个正常颜色的背景(别是整个画面的蓝色)

4.画面花掉一部分,失真,但接电脑时好使,脱机不好使

我的是由于接错了电源(openmv的3.3v输出引脚接入5v电)
解决:vin脚给3.7-7v电源(推荐5v)

5.连接电脑供上电但接不上ide

可能是你的数据线是一根供电线不是传输数据的线,换一根
也可能你的电脑驱动有问题,参考星瞳的教程
解决:检测数据线、驱动

6.寻找色块/形状,找不到的时候报错

很可能是你找不到的时候列表是空的,后面的程序还用了,正确的写法如下:
注意if blobs

blobs = img.find_blobs([yellow_threshold,green_threshold], roi=(0,0,160,80),pixels_threshold=100, area_threshold=100)# merge=True, margin=10 if blobs:#如果找到了 data=[]#初始化数据 blob=find_max(blobs)#找最大 color=blob.code()#记录颜色

二 未解决的bug

1.不影响运行,未知原因

uh oh, no preference for overlappingdetection

2.按键外部中断,也不怎么影响

ValueError: ExtInt vector 15 is already in use

例子:

# 引脚控制例子 # # 这个例子展示了如何使用OpenMV的I/O引脚。 import pyb from pyb import Pin # 连接一个开关到Pin0,当开关闭合的时候,引脚置低。然后Pin1会点亮 pin0 = Pin('P0', Pin.IN, Pin.PULL_UP) pin1 = Pin('P1', Pin.IN, Pin.PULL_UP) flag_key1=0 flag_key2=0 def callback_PIN0(line): global flag_key1 #print("line =", line) flag_key1=1 pyb.delay(10) def callback_PIN1(line): global flag_key2 #print("line =", line) flag_key2=1 pyb.delay(10) extint = pyb.ExtInt(pin0, pyb.ExtInt.IRQ_FALLING, pyb.Pin.PULL_UP, callback_PIN0) extint = pyb.ExtInt(pin1, pyb.ExtInt.IRQ_FALLING, pyb.Pin.PULL_UP, callback_PIN1) while(True): #print(flag_key1) if flag_key1==1 and pin0.value()==0: print("1") flag_key1=0 if flag_key2==1 and pin1.value()==0: print("2") flag_key2=0 

本文地址:https://blog.csdn.net/qq_45037925/article/details/109039017

相关标签: bug python