VxWorks6.9 辅助时钟,高精度定时器精度测试函数!

该博客介绍了如何在VxWorks6.9中进行辅助时钟测试,通过设置不同频率(2000、1000、4000Hz)来验证定时器精度。在每次测试中,使用isr计数器记录时钟中断次数,并在任务延迟后检查计数值,以评估时钟的准确性和稳定性。
摘要由CSDN通过智能技术生成


unsigned int auxClkTestCnt=0;

void timerTestIsr(void)
{
 auxClkTestCnt++;
}


void auxClkTest(unsigned int cnt)
{
 
 auxClkTestCnt=0;
 vxbAuxClkConnect(timerTestIsr,0);
 
 vxbAuxClkDisable();
 vxbAuxClkRateSet(2000);
 vxbAuxClkEnable();
 taskDelay(sysClkRateGet()*10);
 vxbAuxClkDisable();
 printf("Tick count is 2000,auxClkTestCnt=%d\n",auxClkTestCnt);
 
 
 
 auxClkTestCnt=0;
 vxbAuxClkDisable();
 vxbAuxClkRateSet(1000);
 vxbAuxClkEnable();
 taskDelay(sysClkRateGet()*10);
 vxbAuxClkDisable();
 printf("Tick count is 1000,auxClkTestCnt=%d\n",auxClkTestCnt);
 
 
 auxClkTestCnt=0;
 vxbAuxClkDisable();
 vxbAuxClkRateSet(4000);
 vxbAuxClkEnable();
 taskDelay(sysClkRateGet()*10);
 vxbAuxClkDisable();
 printf("Tick count is 4000,auxClkTestCnt=%d\n",auxClkTestCnt);
 
}

VxWorks 6.9中,我们通常使用timerLib库提供的函数来实现定时器功能。其中,timer_create()函数用于创建一个定时器,timer_connect()函数用于将一个定时器与超时函数进行链接,而timer_settime()函数则用于设置定时器的超时时间。 具体地说,timer_create()函数可以用来创建一个定时器对象,并返回该定时器的ID。通过该ID,我们可以对定时器进行后续的操作。timer_connect()函数则将一个定时器与一个超时函数进行链接,即当定时器超时时,会调用该超时函数。而timer_settime()函数则用于设置一个定时器的超时时间,并启动定时器。在VxWorks 6.9中,通过wdStart()函数来启动定时器,该函数需要传入定时器ID、超时时间、超时函数和参数。这样一来,定时器就可以按照指定的超时时间来触发超时事件。 综上所述,在VxWorks 6.9中,我们可以使用timer_create()函数创建定时器对象,用timer_connect()函数将定时器与超时函数进行链接,再使用timer_settime()函数设置定时器的超时时间,并通过wdStart()函数启动定时器。这样就可以实现定时器功能的应用了。 另外,关于VxWorks的文件上传和下载,可以通过在本地电脑上将文件上传到远程系统的临时盘中进行测试。具体的操作步骤是将文件从本地电脑的C盘上传到远程系统的临时盘C:。通过这样的测试,我们可以验证文件的正常上传和下载。 希望以上信息能对您有所帮助!如果还有其他问题,请随时提问。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值