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.

[参考译文] TMS320F28027:SCI 禁用?

Guru**** 2535750 points
Other Parts Discussed in Thread: MOTORWARE

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/606250/tms320f28027-sci-disable

器件型号:TMS320F28027
主题中讨论的其他器件:MOTORWARE

您好 Gurus、  

我使用 SCI 回送模式通过 SCI 使用 TeraTerm 收集信息。 我同时使用 GPIO 28和29。 我正在正确获取数据。  

我想知道的是、一旦我完成了数据输入、我想关闭 SCI 接口并将 GPIO 29用作通用接口。  

我执行以下操作:

1.接收来自 sci 的数据,写入闪存。  

2.将 GPIO 29设置回通用  

GPIO_setMode (obj->gpioHandle、GPIO_Number_29、GPIO_29_Mode_generalpurpose);
GPIO_setLow (obj->gpioHandle、GPIO_Number_29);
GPIO_setDirection (obj->gpioHandle、GPIO_Number_29、GPIO_Direction_Output);

3.拉高 GPIO。  

我能够将 GPIO 拉高和拉低、但我仍然可以在 TeraTerm 上看到我正在获取一些传输。 因此、我在将 GPIO 设置回通用后尝试执行以下操作:

SCI_DISABLE (mySci);

SCI_disableTx (mySci);
SCI_disableRx (mySci);
SCI_disableTxInt (mySci);
SCI_disableRxInt (mySci);

但我没有从这方面取得成功。 那么、我的问题是如何完全关闭我的器件的 SCI?

此致、

Rajan Joshi

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

    您是否能够连接引脚上的任何波形? 您在 Tera Term 中看到了哪些值?

    只需切换到 GPIO 模式、就可以防止这些引脚上的任何 SCI 传输。 如果您可以通过 GPIO 数据寄存器切换 GPIO 引脚、则 SCI 信号不会从这些引脚发出。 此外、您已禁用 SCI、因此我怀疑 C28x 器件可能不存在问题。

    唯一需要检查的是单步执行代码、并确保写入生效(EALLOW 或某些内容缺失时)。

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

    如果您使用 GPIO 28和29通过 SCI 连接到 Tera Term、我认为您的问题出在这里。 由于这些引脚仍连接到 PC、Tera Term 会解释您在发送数据时将 GPIO 拉低和拉高。 您必须从 PC 上物理断开这些 GPIO 的连接才能看到这种情况。

    此致、

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

    Kris、  

    我认为在我的 MotorWare 代码中、我将其设置为 while 等待循环中的通用代码。 因此、我得到的是60MHz 的方波形式。 通过单步执行、我意识到了这一点。  

    文森特  

    我使用这两个 GPIO 连接到 TeraTerm。 如上所述、问题实际上是软件问题以及我在调用 GPIO 函数的位置。  

    感谢您的宝贵意见。  

    此致、

    Rajan Joshi