如何在 Pico i.MX7D 上打开 SPI

How to open SPI on Pico i.MX7D

在我使用 RPi3 的 Android Things 项目中,我将 MCP3008 ADC 分别连接到 SPI CS/MISO/MOSI/SCLK 引脚 BCM8/BCM9/BCM10/BCM11,打开它们 service.openGpio(<pin>) 并定期扫描以读取模拟从连接的盆输入。完整来源:https://github.com/tomaszrykala/MidiMixerAndroidThings/blob/master/things/src/main/java/com/tomaszrykala/midimixerandroidthings/control/adc/MCP3008.java

我正在尝试使用 Pico i.MX7D 板获得相同的结果,但是我是否尝试使用 "SPI3 (SS0)""SPI3.0"GPIO6_IO26 打开 CS 端口我get every time android.os.ServiceSpecificException: Unknown I/O name SPI3 (SS0) (code 19) (将名称替换为前面的任何示例)。

有没有办法通过在 Pico 上打开 SPI gpio 来重用我的 Pi 逻辑?

在 Android Things 中,信号名称与函数相关联。 RPi3 板使用动态 pinmux 支持,允许外设 I/O 在运行时为备用功能打开相同的引脚。但是,每个函数都有一个唯一的信号名称(例如 BCM8SPI0.SS0 是相同的物理引脚)。这就是为什么 pinout diagram 有一个 table,其中某些引脚有多个信号名称。

Pico 板目前不支持内部 pinmux,因此每个引脚都没有可用的备用信号。每个引脚都有专门的功能,这就是为什么 pinout diagram 只显示每个引脚的一个信号名称。