if(mode==0)//RX接收
{
LCD_ShowString(60,150,200,16,16,"NRF24L01 RX_Mode");
LCD_ShowString(60,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,239,32,16,tmp_buf);
}else delay_us(100);
t++;
if(t==10000)//大约一秒钟改变一次状态
{
t=0;
LED0=!LED0;
}
};
}else//TX发送模式
{
LCD_ShowString(60,150,200,16,16,"NRF24L01 TX_Mode");
NRF24L01_TX_Mode();
mode=' ';//???????ü????
while(1)
{
if(NRF24L01_TxPacket(tmp_buf)==TX_OK)
{
LCD_ShowString(60,170,239,32,16,"Sended DATA:");
while(1)
{
MPU6050ReadGyro(Gyro);
if (Gyro[3]==0){
tmp_buf[0]=90;
LCD_ShowString(0,190,239,32,16,tmp_buf);
}
if(Gyro[3]==(-32768)){
tmp_buf[1]=70;
LCD_ShowString(0,190,239,32,16,tmp_buf);
}
红色部分是我写的,我是想让他发送陀螺仪模块的数据陀螺仪模块数据我是把源数据的最高位提取的,也就是符号位然后通过两个IF语句判断是哪个符号,然后让他显示汉字,说是汉字要加字库,有有字库但是不会加,那就先显示字母F和Z,接收的那就更不懂了,陀螺仪数据如下
void MPU6050ReadGyro(short *gyroData)
{
u8 buf[6];
PMU6050_ReadData(MPU6050_GYRO_OUT,buf,6);
gyroData[0] = (buf[0] << 8) | buf[1];
gyroData[1] = (buf[2] << 8) | buf[3];
gyroData[2] = (buf[4] << 8) | buf[5];
gyroData[3]=gyroData[2]&0x8000;//读取原始数据最高位
MPU6050ReadGyro(Gyro);
printf(" 陀螺仪 %8d%8d%8d",Gyro[0],Gyro[1],Gyro[2]);// 串口显示
程序是串口显示的我是用原子的实验,然后直接加入我的需要文件的,现在读取的数据是个数组,显示的也是一个数组不知道如何去显示和发送自己的数据了,求大神帮忙呀
2020-5-11 07:49:12
initnrf();
initmpu();
while(1)
{
if (readgyro(buf))
nrfsend(buf);
}
这个流程,就可以了。。
initnrf();
initmpu();
while(1)
{
if (readgyro(buf))
nrfsend(buf);
}
这个流程,就可以了。。
举报
2020-5-11 08:11:23
原子哥有这方面资料吗,就是用NRF发送其他数据的一些资料和里程
原子哥有这方面资料吗,就是用NRF发送其他数据的一些资料和里程
举报