如何在STM32H7上配置和使用PSSI

1.简介

PSSI代表并行同步从接口,是在我们的高性能STM32H7系列中引入的。PSSI可用作两个STM32微控制器之间或STM32与MPU或FPGA之间的快速接口。在本文中,我们将了解如何在STM32H723上配置和使用此接口。
 

2.先决条件

  • 硬件:
    • Micro USB电缆用于从主机为Nucleo板供电,并将代码加载到STM32中。
    • 核苷酸-H723
  • 软件:STM32CubeIDE
 

3.理论

PSSI提供了一个同步8/16位并行数据输入/输出从接口,该接口提供了发射机和接收机之间的快速数据交换。PSSI向发送器提供指示数据何时有效的数据有效信号,并且向接收器提供指示其何时准备好对数据进行采样的流量控制信号。并行接口可以是8位或16位,并集成了最多8个字的FIFO。对于流量控制,使用两个信号,数据启用和数据就绪。

 

4.步骤

  1. 打开STM32CubIDE

  2. 使用NUCLEO-H723板创建一个新项目


  1. 为项目命名



 
  1. 使用默认设置初始化所有外围设备


 
  1. 配置PSSI

您将在引脚输出和配置选项卡的多媒体类别中找到PSSI接口。

 
  1. 启用PSSI

启用接口。我们将从PSSI模式配置菜单中选择一个16位接口。

 
  1. 启用硬件控制信号

我们将使用RDY(就绪)和数据启用(DE)信号进行通信。

默认情况下,我们将保留其余配置,但您应该知道,您可以配置时钟极性和两个流量控制信号极性:

 
  1. 添加DMA

我们将DMA与FIFO相结合,以实现总线上两个设备之间的最高数据传输性能。

 
  1. 以最大速度运行STM32

检查您是否以最大时钟速率运行以获得最高性能。时钟配置应如下所示:
550 MHz的SYSCLK(CPU时钟)
275 MHz的HCLK(AXI和AHBs时钟)

 
  1. 生成代码

保存项目,也将生成代码。
  1. 添加代码

用于传输和接收数据的API包括:
  • HAL_PSSI_接收_DMA
  • HAL_PSSI_传输DMA
有关通过PSSI连接的两个STM32H7设备之间的通信示例,请参阅STM32Cube7中包含的一个。示例的位置为:
STM32Cube_FW_H7_Vx.x\Projects\NUCLEO-H223ZG\示例\PSSI\PSSI_Transmit_Receive_DMA
 

5.链接

产品介绍-STM32H723VE STM32H725VG STM32H722ZE STM32H723ZG-32位Arm®Cortex®-M7 550 MHz MCU,向上。。。
STM32H723/733、STM32H725/735和STM32H730价值线高级基于Arm®的32位MCU-参考ma。。。
STM32CubeIDE-STM32集成开发环境-STMicroelectronics
STM32Cube7-适用于STM32H7系列的STM32Cube MCU封装(HAL、低层API和CMSIS、USB、TCP/IP。。。
NUCLEO-H223ZG-STM32Nucleo-144开发板,带STM32H2H223ZGMCU,支持Arduino、ST Zio和。。。