OpenMV与单片机串口通信交互

示例器件:

  • OpenMV
  • 英飞凌TC264单片机

简介

  • OpenMV与TC264虽然都可以作为单独的微控制器来使用,但OpenMV是集成了摄像头的控制器,专门用于摄像头识别等作用,涉及到大量运算时,其性能、内存自然就不太够看
  • 而单片机其多用于控制、计算、通信等功能,性能优秀,内存充足
  • 所以一般使用OpenMV和单片机搭配使用,OpenMV识别,通过串口将信息传给单片机,单片机依靠强大的性能进行运算

采用串口通信

串口通信想必大家都知道,这里就不多赘述了,如果有不了解的可以看我的往期文章【STM32】HAL库 CubeMX例程三—串口中断通信(2)(附工程源码)

一、 OpenMV

首先找到OpenMV的串口(图:星瞳科技)

  • P4(Tx):发送端
  • P5(Rx):接收端

接着打开OpenMV IDE,写入代码

from pyb import UART
uart = UART(3, 19200)

#发送Hello World!
while(True):
    uart.write("Hello World!\r")

二、 TC264

  • P14_0(Tx):发送端
  • P14_1(Rx):接收端

写入以下代码

uint8 uart_buff;

int core0_main(void)
{
	get_clk();//获取时钟频率  务必保留
	//用户在此处调用各种初始化函数等
	gpio_init(P20_8,GPO,0,PULLUP);//初始化灯,亮
    uart_init(UART_0, 19200, UART0_TX_P14_0, UART0_RX_P14_1);     //初始化串口

	IfxCpu_emitEvent(&g_cpuSyncEvent);
	IfxCpu_waitEvent(&g_cpuSyncEvent, 0xFFFF);
	enableInterrupts();
	
	while (TRUE)
	{
	    if(uart_query(UART_0, &uart_buff))
	    {
	    	//如果从串口收到“Hello World!”,将灯关闭
	        if(uart_buff == 'Hello World!')
	        {
	            gpio_set(P20_8,1);
	        }

	    }

    }

}

将单片机与OpenMV连线

  • P14_0(Tx)——P5(Rx)
  • P14_1(Rx)——P4(Tx)

运行如下

当OpenMV烧录代码后,立即发送了“Hello World!”,单片机接收到“Hello World!”,立即将灯关闭

在这里插入图片描述

版权声明:本文为CSDN博主「Q大帅」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/Qxiaofei_/article/details/121309687

生成海报
点赞 0

Q大帅

我还没有学会写个人说明!

暂无评论

发表评论

相关推荐

基于STM32的指纹密码锁

设计简介: 本设计是基于单片机的指纹密码锁,主要实现以下功能: 矩阵按键输入密码,并通过按键显示*号可通过按键或手机开门密码可通过按键进行开门可通过蓝牙模块连接手机进行开门可通过指纹进

STM32串口发送接收数据

1.串口通信 我用的32是stm32f10x最小系统没有UART4和UART5 USART : 通用同步异步收发器 UART : 通用异步收发器 nRTS : 请求发送 nCTS : 请求接收 区别:USART指单片机的一个IO端

TCRT5000循迹模块原理及应用

前言 本文将讲述TCRT5000循迹模块的原理及应用。本文应用于STM32,对于使用循迹模块的你有一定的帮助。 以下是本篇文章的正文内容 一、TCRT5000循迹模块介绍 TCRT5000就是一个红外发射和接收器&#xff0