下面是原子哥写的接收发送模式的程序:<br />
其实,其他地方都没有疑问,主要是下面两个循环后面为什么要加个";"分号?<br />
<div style="background-color:#E8E8E8;">
[mw_shl_code=c,true]if(mode==0)//RX模式
{
LCD_ShowString(30,150,200,16,16,"NRF24L01 RX_Mode");
LCD_ShowString(30,170,200,16,16,"Received DATA:");
NRF24L01_RX_Mode();
while(1)
{
if(NRF24L01_RxPacket(tmp_buf)==0)//一旦接收到信息,则显示出来.
{
tmp_buf[32]=0;//加入字符串结束符
LCD_ShowString(0,190,lcddev.width-1,32,16,tmp_buf);
}else delay_us(100);
t++;
if(t==10000)//大约1s钟改变一次状态
{
t=0;
LED0=!LED0;
}
}; //这里为什么加个;?
}else//TX模式
{
LCD_ShowString(30,150,200,16,16,"NRF24L01 TX_Mode");
NRF24L01_TX_Mode();
mode=' ';//从空格键开始
while(1)
{
if(NRF24L01_TxPacket(tmp_buf)==TX_OK)
{
LCD_ShowString(30,170,239,32,16,"Sended DATA:");
LCD_ShowString(0,190,lcddev.width-1,32,16,tmp_buf);
key=mode;
for(t=0;t<32;t++)
{
key++;
if(key>('~'))key=' ';
tmp_buf[t]=key;
}
mode++;
if(mode>'~')mode=' ';
tmp_buf[32]=0;//加入结束符
}else
{
LCD_Fill(0,170,lcddev.width,170+16*3,WHITE);
LCD_ShowString(30,170,lcddev.width1,32,16,"Send Failed ");
};
LED0=!LED0;
delay_ms(1500);
};//这里也是,为什么?
} [/mw_shl_code]
</div>
<br />
<br /> |