NXP i.MX8QXP CPU有四个SPI总线。

ConnectCore 8X系统模块

  • 所有四个SPI端口都可用(与其他功能多路复用),无论是在castellated或LGA焊盘上

ConnectCore 8X SBC Pro

  • SPI0端口在扩展头可用,有两个芯片选择(CS0和CS1)

内核配置

您可以通过内核配置选项管理SPI驱动程序支持:

  • 飞思卡尔i.MX LPSPI控制器(CONFIG_SPI_FSL_LPSPI)

默认情况下,该选项作为内置选项启用ConnectCore 8X内核配置文件

内核驱动程序

ConnectCore 8X系统级模块的SPI总线驱动程序位于司机/ spi / spi-fsl-lpspi.c

设备树绑定和自定义

i.MX8QXP SPI接口设备树绑定记录在文档/ devicetree /绑定/ spi / fsl-imx-cspi.txt

通用的i.MX8QXP CPU设备树定义了所有SPI端口。平台设备树必须:

  • 启用所需的SPI端口,通过设置状态财产好吧

  • 选择芯片选择使用属性cs-gpios它们的数量使用属性目前,spi-num-chipselects

  • 配置将用作SPI端口的pad的IOMUX。

  • 添加SPI从设备作为SPI总线节点的子设备。

示例:ConnectCore 8X SBC Pro上的SPI0端口(作为主端口)

ConnectCore 8X SBC Pro设备树
&lpspi0 {#address-cells = <1>;#size-cells = <0>;Pinctrl-names = "default";pintrl -0 = <& pintrl_lpspi0 >;状态= "ok ";};&iomuxc {pintrl_lpspi0: lpspi0grp {fsl,pins = < SC_P_SPI0_SCK_ADMA_SPI0_SCK 0x0600004c SC_P_SPI0_SDI_ADMA_SPI0_SDI 0x0600004c SC_P_SPI0_CS0_ADMA_SPI0_CS0 0x0600004c SC_P_SPI0_CS1_ADMA_SPI0_CS1 0x0600004c >;};};

使用SPI接口

您可以从Android应用程序访问SPI接口。看到SPI API获取有关SPI APIx的更多信息。

样例应用程序

SPI示例应用程序通过监视与从设备的通信演示了SPI API的使用。该应用程序允许读取,写入和传输数据到从设备。

GitHub查看应用程序说明和源代码。