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.

[参考译文] TM4C1290NCPDT:未调用回调函数

Guru**** 2470720 points
Other Parts Discussed in Thread: TM4C1290NCPDT

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/678507/tm4c1290ncpdt-callback-function-not-being-called

器件型号:TM4C1290NCPDT

CCS 7.2.0.00013

TivaWare_C_Series-2.1.4.178

编译器 TI v16.9.6.LTS

我正在处理的应用使用 SysTick 计时器调度程序。 未调用回调函数 SysTickTimer_Scheduler。

main.c

 tickTimer_CfgFnct (TICKTIMER 调度程序电机命令检查、(void*)&SysTickTimer_Scheduler、(void*) TICKTIMER 调度程序电机命令检查);

 void SysTickTimer_Scheduler (int iFunctionId)


TickTimer.c
 void TickTimer_CfgFnct (uint8_t n、void (* fnct)(void *)、void * arg)

TICKTIME_SCHEDULE_MOTOR_COMMAND_CHECK = 2.

tm4c1290ncpdt_startup_ccs.c 的哪个部分对应于?

当我单步执行代码时、 SysTickTimer_Scheduler 函数的地址会减少一个

传递到 TickTimer_CfgFnct 函数的地址。 我不知道这两者的原因

并不相同。

感谢您的指导。

Priya

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!
    我不清楚您的问题。 在哪里可以找到 ysTickTimer_Scheduler? 我认为这不是来自 TivaWare 库。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    该函数是应用程序的一部分。 在 startupccs.c 文件中、设置 SysTick 模块的中断。 我尚未阅读 Tiva 数据表的这一部分、它看起来像是仲裁定时器调度。 这是一个从 Stellaris 代码移植的项目。
    谢谢、
    Priya
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    这是您创建的应用程序还是他人创建的应用程序? 我无法识别在您定义器件时在 CCS 中自动创建的这样一个 startup_ccs.c。 我认为您的 startup_ccs.c 必须已从默认版本修改。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我目前不在办公室计算机前面。 当我说 startupccs.c 时、我是指 tm4c... 启动文件。 Stellaris 代码正在生产中。 我要移植到 tm4c。 我已经修改了 Stellaris 代码文件、我没有忘记启动文件。 SysTick 中断或相关的计时器中断不会触发、我需要帮助跟踪中断。

    我感谢您的任何见解。

    谢谢、

    Priya

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Priya、
    您能否显示 LM 启动文件代码? startup_ccs.c 代码通常只存储中断矢量。 为了使用 SysTick 中断、您需要启用中断并设置计时器的周期。 下面的示例显示了如何在应用程序代码中设置一个1秒的 SysTick 计时器。

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

    e2e.ti.com/.../tm4c1290ncpdt_5F00_startup_5F00_ccs.ce2e.ti.com/.../cr_5F00_startup_5F00_lm3s.cCharles、

    正在执行所有这些步骤。 我已从移植的工程启动文件中附加 main.c

    移植项目和 Stellaris 项目的示例。

    谢谢、

    此致、

    Priya

    e2e.ti.com/.../3122.main.c

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

    e2e.ti.com/.../systick.zipI不会发现 tm4c1290ncpdt_startup_ccs.c 出现任何问题 我建议您尝试使用 TivaWare SysTick 示例并与您的示例进行比较。  这是 SysTick 项目。