CC1310 RF 接收数据的问题
时间:12-23
整理:3721RD
点击:
使用例程RF Wireless Sensor Network Node开发时,
1、使用EasyLink_transmit()发送完一包数据后,需要等待接收响应数据,应该调用哪部分函数实现接收?因为只需要执行一次,不想在任务while(1)中执行。
2、接收函数EasyLink_receiveAsync与EasyLink_receive有什么区别?
刚接触CC1310,很多地方不明白,希望TI工程师能帮忙解决,谢谢!
1.问题一:调用EasyLink_receiveAsync(rxDoneCallback, 0)来接收, 收到后会触发中断函数rxDoneCallback。
if (EasyLink_transmit(¤tRadioOperation.easyLinkTxPacket) != EasyLink_Status_Success)
{
System_abort("EasyLink_transmit failed");
}
}
/* Enter RX */
if (EasyLink_receiveAsync(rxDoneCallback, 0) != EasyLink_Status_Success)
{
System_abort("EasyLink_receiveAsync failed");
}
2.问题二
EasyLink_receiveAsync与EasyLink_receive是阻塞还是非阻塞的区别
EasyLink_receiveAsync它不会阻塞,利用中断函数来接收
EasyLink_receive会阻塞,没有收到数据,这个函数一直在等待,直到收到数据后,才执行完这个函数