【问题标题】:FDTI libMPSSE I2C- Getting FT_IO_ERROR while using separate Reader & Writer Threads to read and writeFDTI libMPSSE I2C-在使用单独的读写器线程进行读写时获取 FT_IO_ERROR
【发布时间】:2018-05-23 08:46:02
【问题描述】:

我正在尝试使用 FT232HL(libMPSSE dll) 与 I2C 设备通信。单独的线程用于读取和写入数据。第一个写周期成功发生,但随后给出 FT_IO_ERROR。

我在编码时遵循了 AN_177_User_Guide_For_LibMPSSE-I2C.pdf 并使用信号量来同步线程。 我在 Internet 上找不到有关 FT_IO_ERROR 的文档。如果您知道,请帮助我。

【问题讨论】:

    标签: c windows multithreading i2c


    【解决方案1】:

    I2C 总线是半双工的。 认为不需要区分读线程和写线程。

    FT_IO_ERROR 是数据传输失败。 这在您解释的文档的第 13 页上有所描述。

    可能不是接口芯片或库的问题,而是是否按照连接到I2C总线的设备的命令/响应顺序进行通信控制。

    请检查正在使用的 I2C 设备的通信规范。 另外,请确保接口芯片和I2C设备连接正确,并且可以通信。

    【讨论】:

    • 读取器和写入器线程是分开的,因为相同的代码用于 SPI、UART(基于宏的决策)。读取是根据从机控制的 IRQ 线的状态进行的。根据 FT_IO_ERROR 的描述,libMPSSE 无法写入/读取,如果我错了请纠正我。
    • 既然问题出现了,最好一步一步进行调查。例如,基于FTDI的I2C示例程序,修改为您使用的I2C设备的命令/响应,并检查它是否可以以最简单的形式进行通信。检查后,请考虑与当前程序的差异。
    • 嗨,Kunif,我得到了 FT_IO_ERROR 的原因。 (我检查了 libMPSSE 的源代码)。如果您有兴趣,请查看LibMPSSE-I2C.htm
    • 那很好。如果可以发布,除了您的问题,请描述问题的原因和解决方法。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-01
    • 2014-06-22
    • 2021-08-16
    相关资源
    最近更新 更多