新手上路
- 积分
- 46
- 金钱
- 46
- 注册时间
- 2020-9-23
- 在线时间
- 15 小时
|
上位机和单片机通信,单片机一直处于接收模式,50HZ上升沿同步信号,每个上升沿后5ms会切换一次发送模式,发送一组数据,再切回发送模式。这样单片机可以发出数据,但是单片机接受一次数据后就卡死了,哪位大侠指导一下小菜鸟吧!
NRF24L01_RX_Mode();//接收模式
delay_ms(2);
EXTIX_Init();
TIM14_Int_Init(50,8399);
while(NRF24L01_RxPacket(zifu)!=0)
{
while((shortflag==1)&&(NRF24L01_RxPacket(zifu)!=0))
{
tt0=Get_Adc_Average1(ADC_Channel_5,10);
II=Get_Adc_Average2(ADC_Channel_6,10);
}
if(shortflag==0)
{
NRF24L01_TX_Mode(); //发送模式
delay_ms(2);
sendout[0] = 0x06;
sendout[1] = (max&0xff00)>>8;
sendout[2] = max&0x00ff;
sendout[3] = (current&0xff00)>>8;
sendout[4] = current&0x00ff;
sendout[5] = 0xCC;
sendout[6] = 0xCC; //电流保护
NRF24L01_TxPacket(sendout);
shortflag=1;
NRF24L01_RX_Mode();//接收模式
delay_ms(2);
}
if(NRF24L01_RxPacket(zifu)==0)
{
NRF24L01_TX_Mode(); //发送模式
delay_ms(2);
sendout[0] = 0x06;
sendout[1] = 0xF2;
sendout[2] = 0xF2;
sendout[3] = 0xF2;
sendout[4] = 0xF2;
sendout[5] = 0xF2;
sendout[6]=0xF2;
NRF24L01_TxPacket(sendout);
NRF24L01_RX_Mode();//接收模式
delay_ms(2);
}
}
|
|