stm32 spi全双工从机模式

问题描述 投票:0回答:4

我正在研究stm32f0308-discovery和jetson tx2之间的spi通信。 Jetson是master,stm32应该是slave。 (我不知道如何,但如果可能的话,stm32也可能是主设备。)我的问题是我是stm32的新手,我不知道如何使stm32成为从设备。有人可以告诉我 stm32 spi 从机的方法吗?预先感谢。

stm32 spi stm32f4discovery slave nvidia-jetson
4个回答
1
投票

您可以首先阅读您的产品系列的参考手册。然后,您可以在STM32Cube软件包中找到SPI外设配置源代码的示例。

如果您是 STM32 新手,也是微控制器生态系统新手,恐怕您需要一些培训。不过网上有很多资源。


1
投票

您可以在配置 SPI_InitTypeDef 结构体时选择 SPI 模式。您需要将 SPI_Mode 设置为 Slave,如下所示:

SPI_InitDef.SPI_Direction = SPI_Direction_2Lines_FullDuplex;
SPI_InitDef.SPI_Mode = SPI_Mode_Slave;       // <-- This is it
SPI_InitDef.SPI_DataSize = SPI_DataSize_8b;  // 8-bit transactions
SPI_InitDef.SPI_FirstBit = SPI_FirstBit_MSB; // set it to match Master conf
SPI_InitDef.SPI_CPOL = SPI_CPOL_Low;         // set it to match Master conf
SPI_InitDef.SPI_CPHA = SPI_CPHA_2Edge;       // set it to match Master conf
SPI_InitDef.SPI_NSS = SPI_NSS_Hard;          // use hardware SS

可以在此处

找到使用蓝色药丸板的示例教程

0
投票

是的。您可以将STM32作为从机。您唯一需要做的就是清除外设控制寄存器中的 MSTR 位。然后,您也许可以在 SPI 数据寄存器中加载一些值,然后可以从其他板上读取它们。


0
投票

您可以使用 stm32cubeMX 来实现此目的。 在 spi 外设的配置中,您将找到选择主模式或从模式的选项

© www.soinside.com 2019 - 2024. All rights reserved.