|
本帖最后由 bfk2003 于 2012-8-4 19:01 编辑
这个是接收端的SPI
从左到右依次读STATUS(状态),FIFO_STATUS(FIFO状态),CONFIG(收发状态),收到数据应该是STATUS=40现在却是0E,求高手指点啊!
发送的我就不贴了,发送完成前STATUS=0E,FIFO_STATUS=01完成后STATUS=2E,FIFO_STATUS=11
******************发送部分***********************
void main()
{
bit rece_flag=0;
WDTCN = 0xDE;
WDTCN = 0xAD;
Init_Device();
NRF_Init();//不应答,不重发
EA=1;
while(1)
{
if(KEY1==0)
{
Delay_20us(2000);
if(KEY1==0)
tf=1;
}
if(tf==1)
{
TxBuf[0] = 1;
NRFSendDate(TxBuf);//发送数据
while(CheckACK()); //检测是否发送完毕
}
}
}
***************接收部分******************************
void main()
{
bit rece_flag=0;
WDTCN = 0xDE;
WDTCN = 0xAD;
Init_Device();
NRF_Init();//不应答
EA=1;
while(1)
{
if(RX_flag==0)//如果不是接收模式
NRFSetRXMode(); //接收模式
rece_flag=NRFRevDate(RxBuf); //接收到数据返回1
if(rece_flag)
{
if(RxBuf[0]==1)
led1=0;
}
}
} |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
阿莫论坛20周年了!感谢大家的支持与爱护!!
曾经有一段真挚的爱情摆在我的面前,我没有珍惜,现在想起来,还好我没有珍惜……
|