您好,首先非常您感谢阅读此贴!
一、下面是正题:
1、使用两个CC2530的节点,一个作为发送节点,另一个作为接受节点。
2、使用BasicRF中的light_switch例程做单步测试实验,程序稍作改动,把灯控功能改做串口传输。
3、在IAR6.3上单步测试
二、下面是问题:
1、程序的第一个主循环正常,但是在第二个循环中始终停在while(!basicRfPacketIsReady());语句上。rxi.isReady的值在第二个接受循环中无法置1,请问有哪些情况会导致这样的问题?Ps:没有改动basicrf.c文件。
三、下面是接受节点的主循环:
while (TRUE)
{
while(!basicRfPacketIsReady());
if(basicRfReceive(pRxData, APP_PAYLOAD_LENGTH, NULL)>0)
{
for(i=0;i<10;i++)
{
Uart1_SendByte(pRxData[i]);
pTxData[i]=pRxData[i];
}
basicRfSendPacket(SEND_ADDR, pTxData, APP_PAYLOAD_LENGTH);
}
}
四、下面是发送节点的主循环:
while (TRUE)
{
if(basicRfReceive(pRxData, APP_PAYLOAD_LENGTH, NULL)>0)
{
for(i=0;i<10;i++)
{
pTxData[i]=pRxData[i]+1;
}
if(count==10)
{
count=0;
basicRfSendPacket(SEND_ADDR, pTxData, APP_PAYLOAD_LENGTH);
}
}
}
再次感谢阅读此贴~感谢您宝贵的看法~