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.

[参考译文] RTOS/TM4C1294NCPDT:TM4C1294NCPDT 的端口 D 不能与 TI-RTOS 配合使用

Guru**** 2445440 points


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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/631336/rtos-tm4c1294ncpdt-port-d-of-tm4c1294ncpdt-not-working-with-ti-rtos

器件型号:TM4C1294NCPDT

工具/软件:TI-RTOS

您好,

我在 CCS 上处理 TI-RTOS。当前在我的固件中有3个任务,如下所述。

1)以太网驱动程序示例

2) USB 驱动程序示例

3) GPIO 根据以太网任务解码的帧进行切换

对于任务间通信,我在之间使用了两个队列,如下所述

1)以太网和 USB 任务之间

2)在以太网和 GPIO 切换任务之间切换

我面临的问题是, 目前、我正在切换37个引脚、其中8个引脚来自 PD0-7。当我不将这8个引脚用作 GPIO 时、一切工作正常、但如果我添加这8个引脚、则程序首次按预期运行、但在首次运行后中止 运行.我不知道这种情况是什么.请通过提供适当的方法帮助我摆脱这种情况.这是 RTOS 的 NMI 问题,因为 端口 D 在没有 RTOS 的情况下工作正常,还是有任何额外的设置 将 PORTD 用作 GPIO

谢谢、此致、

 

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    大家好、Pavan、
    PORTD[7]用于 NMI。 要将 PORTD[7]用于 GPIO、您需要解锁并提交引脚以供新使用。 请参阅此主题中的问题1解决方案。 e2e.ti.com/.../374640

    TM4C129器件端口 D

    HWREG (GPIO_PORTD_AHB_BAS+GPIO_O_LOCK)= GPIO_LOCK_KEY;

    HWREG (GPIO_PORTD_AHB_BAS+GPIO_O_CR)|= GPIO_PIN_7;
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Charles,
    我已经尝试过此解锁和提交、但它仍然无法解决我的问题、并且在首次成功运行后停止、然后中止。请告诉我是否还有其他需要注意的事项。

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

    您能否提供有关中止的更多详细信息? 例如、您是否在 ROV 中查看以验证您没有堆栈溢出。 最简单的方法是在中止后打开 Tools->ROV->BIOS->Scan for Errors。 注意:ROV 也存在于 IAR 中。

    注意:内核插入 NMI 处理程序、但不对配置执行任何操作(例如、它不会触碰 PORTD)。

    Todd