因为大多数协议传输都是按一字节一字节传输的,那么如果你传输的是字符串就得拆开来一个一个传输,接收时也会出现无法将字节转为字符串的麻烦
解决方法:用字符数组加上最后的‘\0’ 再传地址就可以模仿字符串了
char name[7]={0};
char age[3]={0};
char number[4]={0};
name[6]='\0';
age[2]='\0';
number[2]='\0';//不加这个貌似也行,保险起见最好加上
if(NRF24L01_RxPacket(tmp_buf)==0)//一旦接收到信息,则显示出来.
{
if(tmp_buf[0]==0x89&&tmp_buf[1]==0x89&&tmp_buf[30]==0x92&&tmp_buf[31]==0x92)
{
int oo=2;
HAL_GPIO_WritePin(GPIOE,GPIO_PIN_5,GPIO_PIN_SET);
HAL_Delay(1000);
HAL_GPIO_WritePin(GPIOE,GPIO_PIN_5,GPIO_PIN_RESET);
HAL_Delay(1000);
for(;oo<=8;oo++)
{
name[oo-2]=tmp_buf[oo];
}
for(;oo<=10;oo++)
{
age[oo-9]=tmp_buf[oo];
}
for(;oo<=13;oo++)
{
number[oo-11]=tmp_buf[oo];
}
lcd_show_string(30,250,50,16,16,name,RED);
lcd_show_string(30,275,50,16,16,age,RED);
lcd_show_string(30,300,50,16,16,number,RED);
}
}