完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
老师们好,初次接触2.4G芯片,今天尝试2.4G直接发送、接收,但没搞清楚如何主动控制手法,请指点一下,函数中的SBP_RF_PERIODIC_EVT位应该是与发送有关,这个应该怎么控制呢,或者有没有相关的说明资料发我学习下也可以,谢谢。
/********************************************************************* * @fn RF_ProcessEvent * * @brief RF 事件处理 * * @param task_id - 任务ID * @param events - 事件标志 * * @return 未完成事件 */ uint16_t RF_ProcessEvent(uint8_t task_id, uint16_t events) { if(events & SYS_EVENT_MSG) { uint8_t *pMsg; if((pMsg = tmos_msg_receive(task_id)) != NULL) { // Release the TMOS message tmos_msg_deallocate(pMsg); } // return unprocessed events return (events ^ SYS_EVENT_MSG); } if(events & SBP_RF_START_DEVICE_EVT) { tmos_start_task(taskID, SBP_RF_PERIODIC_EVT, 1000); return events ^ SBP_RF_START_DEVICE_EVT; } if(events & SBP_RF_PERIODIC_EVT) { RF_Shut(); RF_Tx(TX_DATA, 10, 0xFF, 0xFF); tmos_start_task(taskID, SBP_RF_PERIODIC_EVT, 1000); return events ^ SBP_RF_PERIODIC_EVT; } if(events & SBP_RF_RF_RX_EVT) { uint8_t state; RF_Shut(); TX_DATA[0]++; state = RF_Rx(TX_DATA, 10, 0xFF, 0xFF); PRINT("RX mode.state = %xn", state); return events ^ SBP_RF_RF_RX_EVT; } return 0; } |
|
相关推荐
1个回答
|
|
这里的发送是通过TMOS管理时间进行定时的发送处理,但是具体2.4G往外发包是在底层进行的处理,因此你可以修改对应TMOS任务的时间参数会发现收发的速度会随之变化,底层目前暂不开放,可以先从应用层着手查看。
|
|
|
|
只有小组成员才能发言,加入小组>>
342 浏览 1 评论
CH579M+RT-Thread,RTC从Sleep模式唤醒失败是什么原因?
2803 浏览 2 评论
2300 浏览 1 评论
使用ch569例程中的CH372Device程序,修改电脑端程序的读写端口时卡住了是什么原因?
344浏览 2评论
求助,CH368L的被动接口有没有详细的读写时序以及操作流程说明
741浏览 2评论
849浏览 2评论
916浏览 2评论
541浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-9-28 23:02 , Processed in 0.957380 second(s), Total 48, Slave 42 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号