Part Number:CC1310Other Parts Discussed in Thread: SYSBIOS
我在程序里每秒执行一次 ClockP_getTicks() 来获取tick,获取的值是以1S的 ClockP_tickPeriod数 进行累加的,由于系统ClockP_tickPeriod默认值为10, 也就是说以100000递增,当计数到32位满时会自动从0开始计数,这样下来时间长了又自动复位了,根本获取不到实时时间,因此请教下有没有别的方案实现以+1的频率递增,目前我是声明了一个外部全局变量在每秒的回调函数里进行累加,但这样不能解决根本问题。以下是相关代码内容:
void cc1310_Rtc_Init(void)
{
ClockP_Params clkParams;
ClockP_Params_init(&clkParams);
clkParams.period = 1000000/Clock_tickPeriod;
clkParams.startFlag = true;
/*构造周期性时钟实例*/
ClockP_construct(&clk0Struct,(ClockP_Fxn)rtcCallBack,
1000000/Clock_tickPeriod,&clkParams);
clk2Handle = ClockP_handle(&clk0Struct);
ClockP_start(clk2Handle);
}
Alex Zhang:
您好,您这边使用的是哪个例程
,
?? ?:
您好,RTC你们官方没有给NORTOS相关例程,我是在在论坛找的,我用的SDK为 simplelink_cc13x0_sdk_4_20_02_07
,
Alex Zhang:
将 RTC 与 NoRTOS 一起使用并非易事,因为 RTC 是由 TimerP 模块(稍后由 ClockP 模块使用)配置和使用的。这意味着 RTC 中断已启用并绑定到回调函数。我能想到的扩展此功能的最简单方法(TimerP 仅利用 RTC channe0)是查看 TimerPCC26XX_nortos.c 文件并尝试扩展/更改此文件,以便您可以在中断中设置和处理更多 RTC 事件。
,
?? ?:
好的,再请教您一个问题 ,RTC正常启动之后如何配置秒寄存器值 ,我直接赋值程序就死了,有相关 API吗?
,
Alex Zhang:
已经跟进您的问题,有更新我会立即回复您
,
Alex Zhang:
我们很抱歉地告诉您这个似乎没有相关NORTOS的API。
seconds_set我们可以看到其依赖库在:SDK文件夹目录\kernel\tirtos\packages\ti\sysbios\hal,而相对的SDK文件夹目录\kernel\tirtos\packages中并无相关功能的文件。
更多您也可以参阅SYS/BIOS (TI-RTOS Kernel) User's Guide (Rev. V)的5.4章节。
,
Alex Zhang:
另外我这边为您找到一个相关链接,您可以看一下对您是否有帮助
e2echina.ti.com/…/cc1310-nortos-time-demo