本文整理汇总了C++中Timer_Object类的典型用法代码示例。如果您正苦于以下问题:C++ Timer_Object类的具体用法?C++ Timer_Object怎么用?C++ Timer_Object使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了Timer_Object类的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。
示例1: Timer_isrStub
/*
* ======== Timer_isrStub ========
*/
Void Timer_isrStub(UArg arg)
{
ti_catalog_arm_peripherals_timers_TimerRegsM4 *timer;
Timer_Object *obj = (Timer_Object *)arg;
timer = (ti_catalog_arm_peripherals_timers_TimerRegsM4 *)
Timer_module->device[obj->id].baseAddr;
/* clear all timer interrupt status bits */
Timer_write(obj->altclk, &timer->GPTMICR, 0xFFFFFFFF);
/* for DYNAMIC, mode latch prevThreshold and detect rollovers */
if (obj->runMode == Timer_RunMode_DYNAMIC) {
/*
* if the current threshold is greater than the prevThreshold
* then a rollover has occurred.
*/
if (obj->prevThreshold < timer->GPTMTAMATCHR) {
obj->rollovers += 1;
}
obj->prevThreshold = timer->GPTMTAMATCHR;
}
obj->tickFxn(obj->arg);
}
开发者ID:mobiaqua,项目名称:ti-sysbios,代码行数:28,代码来源:Timer.c
示例2: Timer_periodicStub
/*
* ======== Timer_periodicStub ========
*/
Void Timer_periodicStub(UArg arg)
{
Timer_Object *obj = (Timer_Object *)arg;
volatile UInt32 dummy;
dummy = Hwi_nvic.STCSR; /* read to ack the interrupt */
Hwi_nvic.ICSR = 0x02000000; /* clear SysTick pending */
obj->tickFxn(obj->arg);
}
开发者ID:CheredHerry,项目名称:ti-bios,代码行数:13,代码来源:Timer_smp.c
示例3: Timer_stub
/*
* ======== Timer_stub ========
*/
Void Timer_stub(UArg arg)
{
Timer_Object *obj = (Timer_Object *)arg;
TimerRegs *timer;
timer = (TimerRegs *)Timer_module->device[obj->id].baseAddr;
/* acknowledge the interrupt */
timer->tisr = obj->tier;
/* call the user's ISR */
obj->tickFxn(obj->arg);
}
开发者ID:DemonTu,项目名称:ALL_SmartBatterySwitch_CC2640,代码行数:16,代码来源:Timer.c
示例4: Timer_dynStub
/*
* ======== Timer_dynStub ========
*/
Void Timer_dynStub(UArg arg)
{
Timer_Object *obj = (Timer_Object *)arg;
TimerRegs *timer;
UInt irqStatus;
timer = (TimerRegs *)Timer_module->device[obj->id].baseAddr;
/* get interrupt status flags */
irqStatus = timer->tisr;
/* if this is a rollover (overflow) interrupt ... */
if (irqStatus & TIMER_IRQSTATUS_OVF_IT_FLAG) {
/* acknowledge the interrupt */
timer->tisr |= TIMER_IRQSTATUS_OVF_IT_FLAG;
obj->rollovers++;
}
/* if this is a threshold match interrupt ... */
if (irqStatus & TIMER_IRQSTATUS_MAT_IT_FLAG) {
/* acknowledge the interrupt */
timer->tisr |= TIMER_IRQSTATUS_MAT_IT_FLAG;
/* save previous threshold value */
obj->prevThreshold = timer->tmar;
/* set compare threshold for next periodic interrupt */
timer->tmar += obj->period;
/* call the user's ISR */
obj->tickFxn(obj->arg);
}
}
开发者ID:mobiaqua,项目名称:ti-sysbios-c64t,代码行数:39,代码来源:Timer.c
注:本文中的Timer_Object类示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论