【问题标题】:Porting peripheral to AndroidThings - pin selection将外围设备移植到 AndroidThings - 引脚选择
【发布时间】:2017-05-05 03:11:27
【问题描述】:

我正在尝试将一些代码移植到 AndroidThings。目前它使用“GPIO 3 (SCL)”作为 Raspberry Pi 上的引脚。 https://github.com/mattdh666/rpi-led-matrix-panel/blob/master/RgbMatrix.h#L206

但在 AndroidThings 上,相同的引脚是“I2C1 (SCL)”,所以我无法使用 peripheralManService.openGpio("BCM3") 引用它 see here for Pinout diagram

    try {
        gpioSerialClock = service.openGpio("BCM3"); // Throws Caused by: android.os.ServiceSpecificException: Unknown I/O name BCM3
    } catch (IOException e) {
        throw new IllegalStateException(e);
    }

我应该移动我的电线以使用 Raspberry Pi 上标记为 GPIO 的另一个引脚吗?有什么后果吗:/我的外围设备想使用 BCM3,因为它是串行时钟

如果需要,对所选引脚进行更直观的解释:

【问题讨论】:

    标签: porting raspberry-pi3 android-things


    【解决方案1】:

    您要移植的代码假定连接的所有引脚都是纯 GPIO 引脚。它显式地驱动每个引脚的所有引脚转换。在这方面,您只需要 13 个可用的 GPIO 端口即可连接到 RGB 矩阵。您只需对接线进行适当调整,以使示例中的引脚编号与您选择的端口相匹配。

    这不是处理来自 Android Things 的通信的最有效方式(大量往返和 I/O 循环),但它应该作为一个开始。理想情况下,您应该从 SPI 或 I2C 总线(如果协议匹配)驱动时钟串行数据,以减少开销并提高传输速率。

    【讨论】:

      猜你喜欢
      • 2014-03-06
      • 1970-01-01
      • 2016-08-29
      • 2023-03-21
      • 2019-12-04
      • 2015-10-08
      • 1970-01-01
      • 1970-01-01
      • 2020-07-13
      相关资源
      最近更新 更多