完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
电子发烧友论坛|
本帖最后由 一只耳朵怪 于 2018-6-6 16:33 编辑
您好: 我使用例程rfWsnNode和rfWsnConcentrator进行通信,请问rfWsnNode这个例程是否没有休眠呢? 我目前去除了传感器控制器这部分,想单纯的用一个定时器,超时就发送一组包,发生完成就休眠,我使用的是NodeTask.c文件中已经配置好的定时器 /* setup timeout for fast report timeout Clock_setTimeout(fastReportTimeoutClockHandle,NODE_ADCTASK_REPORTINTERVAL_FAST_DURIATION_MS * 1000 / Clock_tickPeriod);/* Start fast report and timeout */Clock_start(fastReportTimeoutClockHandle);然后在回调中发生数据包,重置定时器 工程有两个进程: NodeRadioTask_init();NodeTask_init();里面分别有一个while(1)循环,NodeRadioTask中是在等待数据发送和接收的事件,NodeTask的循环是在等待定时器超时改变标志位进入,讲数据发送事件抛出。 我阅读了该工程的代码,没有发现在哪里能进入休眠,请问我如何才能在发送完数据包后进入休眠,然后再用定时器唤醒呢?谢谢 |
|
相关推荐
5个回答
|
|
|
如果程序中已经无其他任务,你可以调用 task_sleep进入睡眠;或者使用时钟定时,这部分可以参考SDK里的时钟example
|
|
|
|
|
|
你好,我查看了时钟的例程,但发现里面没有使用到休眠和唤醒,貌似仅仅是定时,然后超时输出。主程代码如下: int main()[ /* Construct BIOS Objects */ Clock_Params clkParams; /* Call driver init functions */ Board_initGeneral(); Clock_Params_init(&clkParams); clkParams.period = 5000/Clock_tickPeriod; clkParams.startFlag = TRUE; /* Construct a periodic Clock Instance */ Clock_construct(&clk0Struct, (Clock_FuncPtr)clk0Fxn, 5000/Clock_tickPeriod, &clkParams); clkParams.period = 0; clkParams.startFlag = FALSE; /* Construct a one-shot Clock Instance */ Clock_construct(&clk1Struct, (Clock_FuncPtr)clk1Fxn, 11000/Clock_tickPeriod, &clkParams); clk2Handle = Clock_handle(&clk1Struct); Clock_start(clk2Handle); BIOS_start(); /* does not return */ return(0);]/* * ======== clk0Fxn ======= */Void clk0Fxn(UArg arg0)[ UInt32 time; time = Clock_getTicks(); System_printf("System time in clk0Fxn = %lun", (ULong)time);]/* * ======== clk1Fxn ======= */Void clk1Fxn(UArg arg0)[ UInt32 time; time = Clock_getTicks(); System_printf("System time in clk1Fxn = %lun", (ULong)time); System_printf("Calling BIOS_exit() from clk1Fxnn"); BIOS_exit(0);] |
|
|
|
|
|
非常感谢,我刚才在阅读低功耗的文档,是否需要 在 主函数中调用Power_enablePolicy(); 这个函数来启动呢? 还是直接如你说所直接pend即可? |
|
|
|
|
testd00222 发表于 2018-6-6 07:31 直接pend即可 |
|
|
|
|
|
|
|
|
|
|
只有小组成员才能发言,加入小组>>
549 浏览 0 评论
1613 浏览 0 评论
2047 浏览 0 评论
为啥BQ7693003DBTR芯片在和BQ769X0盒子通讯时收不到信号?
1513 浏览 0 评论
DSP 28027F 开发板 XDS100v2调试探针诊断日志显示了 Error -150 (SC_ERR_FTDI_FAIL)如何解决
1337 浏览 0 评论
AT32F407在USART2 DMA发送数据时,接包接到了要发送的数据,程序还是处于等待传输完成的标识判断中,为什么?
1756浏览 29评论
2781浏览 23评论
请问下tpa3220实际测试引脚功能和官方资料不符,哪位大佬可以帮忙解答下
1723浏览 20评论
请教下关于TAS5825PEVM评估模块原理图中不太明白的地方,寻求答疑
1634浏览 14评论
两个TMP117传感器一个可以正常读取温度值,一个读取的值一直是0,为什么?
1645浏览 13评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-1 23:42 , Processed in 0.899294 second(s), Total 81, Slave 64 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
4512