This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] TM4C123BH6ZRB:I2C 队列解决方案问题

Guru**** 2581475 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/748488/tm4c123bh6zrb-i2c-queue-solution-question

器件型号:TM4C123BH6ZRB
主题中讨论的其他器件:TM4C123

您好!

我的设计使用 I2C 队列解决方案。
是否可以创建第二个 I2C 队列? 如果是,如何做到?
2.是否可以删除 I2C 的旧队列消息?
我需要来自 SWI DO I2C 命令的高优先级。

BR、

JK Wolf

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    JK Wolf、您好!

    您是否正在使用 TI-RTOS I2C 驱动程序? 如果是:

    不能创建第二个队列、但可以通过分别打开两个单独的 I2C 端口来使用这两个端口。 但是、它们需要位于单独的总线上。

    2.不支持删除单个事务,可以调用 I2C_cancel 来删除所有正在进行/排队的事务,前提是您正在回调模式下使用驱动程序。

    如果驱动程序处于回调模式、I2C 驱动程序支持在 Swi 中排队的传输。

    谢谢、

    肖恩
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Sean、
    感谢您的回复、
    是的、我使用 TIRTOS I2C 驱动程序。
    我使用的是 TI RTOS 版本"tirtos_tivac_2_14_04_31"

    什么版本支持 I2C_CANCEL API?
    我是否确定不支持 Tiva TM4C123?
    如果 Tiva 不支持,如何取消 queu?

    BR、
    JK
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    遗憾的是、该版本之后添加了 CANCEL API、而 TivaC 器件不支持该 API。 但是、我看一下代码、重新添加到 Tiva 驱动程序似乎很重要。 这些文件是在 TM4C129X 上构建和运行的、因此我希望它们能为您所用。 或者至少它是一个良好的起点。 请注意、由于我们使用的是经过修改的驱动程序、因此可能会出现不可预见的问题。

    e2e.ti.com/.../I2CTiva.ce2e.ti.com/.../I2CTiva.h

    如果您使用的是 CCS、您应该能够像这样将其添加到您的项目中:

    希望它能帮助你!

    肖恩

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Sean、
    我使用 IAR 7.4

    BR、
    JK
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您是否将文件添加到了您的 IAR 项目中? 如果是、是否有问题?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Sean、
    感谢您的回复。
    不必须使用取消 API、因为我有其他错误。 因此、我认为取消可以解决我的问题。
    我将为我的问题创建新问题。

    BR、
    JK
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    那么、我们是否可以将该线程标记为已解析?