_EINT();//打开中断
///
CE905_0; //ce905=0
SpiWriteByte(RRC);
for(i=0; i
{
RFRxBuf[i] = SpiReadByte();
}
CE905_1; //CE_905 = 1
///
ChangeMode(RXMode); //////
K1Sta = K2Sta = WaitKeyDw;
while(1)
{
if(DR905)
{
RF905_Read(RRP, RFRxBuf);
switch(RFRxBuf[0])
{
case 0x01:
LED1_BLK;
break;
case 0x02:
LED2_BLK;
break;
}
}
switch(K1Sta)
{
case WaitKeyDw:
if(K1DwCnt > (KeyDwTimes -1))
{
ChangeMode(TXMode);
K1Sta = WaitKeyUp;
delay(3100);
RFTxBuf[0] = 0x01;
RF905_Write(WTP, RFTxBuf); //////
ChangeMode(TXData);
delay(650); /// ensure nRF905 have began TX ///
ChangeMode(RXMode); //////
}
break;
case WaitKeyUp:
if(K1DwCnt == 0)
K1Sta = WaitKeyDw;
break;
}
switch(K2Sta)
{
case WaitKeyDw:
if(K2DwCnt > (KeyDwTimes -1))
{
ChangeMode(TXMode);
K2Sta = WaitKeyUp;
delay(3100);
RFTxBuf[0] = 0x02;
RF905_Write(WTP, RFTxBuf); //////
ChangeMode(TXData);
delay(650); /// ensure nRF905 have began TX ///
ChangeMode(RXMode); //////
}
break;
case WaitKeyUp:
if(K2DwCnt == 0)
K2Sta = WaitKeyDw;
break;
}
// TransmitBytes(); //发送缓冲区里的数据
// LED1_ON;
// delay(20000);
// LED1_OFF;
// delay(20000);
// _NOP();
}
}