STM32单片机与Openmv的串口通信

本文介绍了如何使用OpenMV进行图像处理,并通过串口将数据发送给STM32F103单片机,再由单片机在TFTLCD显示屏上显示数据。在过程中,详细讲述了OpenMV的主要代码、STM32的UART配置以及数据接收处理的方法,同时提到了串口通信的注意事项,如波特率匹配和数据格式一致性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

简谈闲话

这两天本人利用周末时间粗略的学习一下openmv的使用,目的是用openmv图像处理数据并通过串口发送数据给STM32F103的单片机,并且用TFTLCD显示屏打印数据。在学习的过程中遇到了一些问题且成功解决,下面将讲述其中的过程,希望可以帮助需要的朋友,欢迎大家一起交流学习。

Openmv主要代码

import sensor, image, time, math
from pyb import UART
import json

sensor.reset()
sensor.set_pixformat(sensor.RGB565)
sensor.set_framesize(sensor.QVGA)
sensor.skip_frames(time = 2000)
sensor.set_auto_gain(False) # must be turned off for color tracking
sensor.set_auto_whitebal(False) # must be turned off for color tracking
clock = time.clock()

uart = UART(3,115200)   #定义串口3变量
def find_max(blobs):    #定义寻找色块面积最大的函数
    max_size=0
    for blob in blobs:
        if blob.pixels() > max_size:
            max_blob=blob
            max_size = blob.pixels()
    return max_blob
####################################
#
#此为颜色处理代码
#
###################################
#bytearray为可变序列的字节数组 返回一个新的字节数组(将数据转为16进制)
img_data = bytearray([0x2C,18,X_black_Sign,Y_black_Sign,X_black_relative_displacement,Y_black_relative_displacement,
                           X_red_Sign,Y_red_Sign,X_red_relative_displacement,Y_red_relative_displacement,X_yellow_Sign,
                           Y_yellow_Sign,X_yellow_relative_displacement,Y_yellow_relative_displacement,
                           L_black,L_red,L_yellow,0x5B])


uart.write(img_data)

评论 169
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值