您好!
我们为基于 Contiki NGS 模块的 CC2652R Launchpad 开发了 TSCH 通信软件。 contiki 的计时器过程很慢、因此我们正在尝试根据 TI SDK 的 Timer.c 和 Timer.h 添加一个基于连续回调的计时器函数。
我们的软件使用较旧的 SDK 版本4.40。
即使我复制"timerled"中给出的使 LED 闪烁1秒的示例、计时器初始化本身实际上也存在故障。 因此、当我添加这部分代码时、MCU 始终挂起。
我进行了一些挖掘、发现 SDK 4.40的 Timer.c 和最新的 SDK (比如版本7.10)的函数有许多区别。
一个示例是 Timer_Init ()函数。 在我们的4.40 SDK 中、它如下所示:
/*
*=========== Timer_init =========
*/
空 Timer_init (void)
{
uint_least8_t i;
uint_fast32_t 密钥;
key = HwiP_disable ();
如果(!isInitialized){
初始化=(bool) true;
/*调用每个驱动程序的初始化函数*/
对于(I = 0;I < Timer_count;I++){
Timer_config[i].fxnTablePtr->initFxn ((Timer_handle)和(Timer_config[i]);
}
}
HwiP_RESTORE (密钥);
}
但是、在最新的 SDK 中、函数实际上是空白的、如下所示:
/*
*=========== Timer_init =========
*/
空 Timer_init (void)
{
/*不执行任何操作*/
}
我的问题是:以前的实现有什么问题吗? 这是为什么我不能让这个简单的示例运行吗?
此外、我是否应该在 SDK 中只替换 Timer.c、Timer.h 的头文件和 c 文件? 我想确定是否有问题、以便更新 SDK、否则我可能会更改两个重要文件、但仍然无法获得任何结果。
期待您的帮助、
阿比吉特