pixy php,Pixy2与STM32进行SPI通信

本文介绍了如何使用Pixy2这款视觉传感器与STM32进行SPI通信。通过PixyMon软件配置Pixy2的Arduino ICSP SPI接口,然后连接STM32的SPI管脚,实现数据交互。文章提供了SPI通信的基本设置、数据包格式,并给出了STM32发送请求数据包获取Pixy2版本的示例代码。
摘要由CSDN通过智能技术生成

bVbEHyl

简单来说,如果你通过检索从而看到这篇文章,那就假设你已经知道Pixy2是用来干什么的(一款功能强大的开源视觉传感器),以及你已拥有一些STM32基础。你可以通过访问官方手册来获得更多关于Pixy2的相关信息。

如果你已经非常了解Pixy2的运作模式,只是想快速与STM32建立通信,那么你可以直接参考我的代码:

通常情况下Pixy2是搭配Arduino使用的,并且Pixy2能通过SPI以2 Mbits/秒的速度向Arduino发送信息。不过如果让Pixy2与不同的平台进行通信,首先就要确定以哪种方式进行通信。官方给出Pixy2支持的通信方式有SPI、I2C、UART、USB和Analog/digital,并且通信速度USB>SPI>I2C>UART>A/D。本文将具体描述Pixy2与STM32的SPI通信。

设置与连接

首先,你需要去官网下载一个叫PixyMon的软件,它能让你在Windows或Mac平台对Pixy2进行设置。

bVbEHWp

将你的Pixy2与电脑用USB线连接后,打开软件,在Configure-Interface-Data out port选项中,我们选择Arduino ICSP SPI。是的,即使是与Arduino通信的SPI选项,也可以应用到STM32上,其他选项不用更改。

设置好后,我们把Pixy2与电脑连接的USB断开,用杜邦线将Pixy2与STM32连接,我这里用的STM32是正点原子的STM32mini开发板。在连接之前,我们先看一下Pixy2的管脚图:

bVbEH0l

在Arduino ICSP SPI模式中主要用到(1)(3)(4)三个管脚,还有5V和GND与STM32的5V和GND直接相连就行了,两者具体的连接方法如下:

Pin 1 (SPI MISO) ➜ PA6 (STM32 SPI MISO signal)

Pin 4 (SPI MOSI) ➜ PA7 (STM32 SPI MOSI signal)

Pin 3 (SPI SCK) ➜ PA5 (STM32 SPI SCK signal)

Pin 2 ➜ 5V (STM32 5V)

Pin 6 ➜ GND (STM32 GND)

串口协议

Pixy2是以数据包的形式来和上位机进行通信的,也就是说,想要和Pixy2通信,你必须向Pixy2发送一个请求数据包,然后Pixy2再把你想要得到的数据或者状态用数据包发给你。所以你的请求/反馈数据包就像下面的格式:

Requests-(你发给pixy的)

字节

说明

数值

0-1

16-bit sync

174, 193 (0xc1ae)

2

Type of packet

(varies)

3

Length of payload in bytes (len)

(varies)

4-len

Variable length payload

(varies)

Responses-(pixy发给你的)

字节

说明

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值