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.

[参考译文] Starterware/TMS320C6748:GPIO 中断 ISR 内的 I2C 写入和读取

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/568651/starterware-tms320c6748-i2c-write-and-read-within-gpio-interrupt-isr

器件型号:TMS320C6748
主题中讨论的其他器件:TSC2007

工具/软件:Starterware

您好、TI 专家:

 

我使用 LCDK6748连接 TSC 2007芯片、我使用 starterWare-1-20-04-01 I2C 接口程序 codecif.c 与 TSC2007通信。  I2C 接口程序在主程序中运行良好、我可以从 TSC2007读取/写入数据。  当我将 I2C 程序移动  到 ISR 例程时、它会停止。  我使用 GPOI2-6下降沿触发 ISR。 它进入 ISR、然后卡在 I2C。   在 ISR 中使用 I2C 读取/写入时、我错过了什么? 我在 I2C 中使用了 MASK_INT4、在 GPIO 中断中使用了 MASK_INT6。  GPIO 中断 ISR 中包含 I2C 读取/写入。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    将此主题移至 C6748论坛。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    如何将此主题移至 C6748论坛?! 请帮助。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Mike、

    您正在使用 C6748、对吧?
    如果是、这是您的问题的论坛。
    请稍等、有人会回答。

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

    Starterware 提供了简单访问 C6748重要部分的良好示例。 您可以利用这些示例构建更复杂的系统。

    这并不意味着您可以像所做的那样进行更改。 显然、您正在尝试从另一个中断服务例程中运行和基于中断的 I2C 例程。 这不是一个好方法。 这样做很难、因此我建议您不要这样做、除非您的日程安排允许对其进行大量工作。 这不是我们通过 Starterware 提供的支持。

    对于 TI-RTOS 系统、我们始终建议用户在 ISR 内只执行少量工作、然后发布一个信号量来启动任务或发布到软件中断来启动它的运行。 当数据完成中断发生时、任务和软件中断可以被中断、而在没有特殊处理的情况下、ISR 或硬件中断不能被中断。

    这是否是您尝试实现目标的可接受方式? 是否改用 TI-RTOS 系统而不仅仅是 Starterware?

    此致、
    RandyP
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    非常感谢 Randy!
    Mike
x 出现错误。请重试或与管理员联系。