void Data_Send_VOTAGE(void) { u8 _cnt=0; float adc; adc = (ADC_ConvertedValue / 4096.0) * 3.3 * 11.0; ADC_ConvertedValue = (u32)(adc * 100); data_to_send[_cnt++]=0xAA; data_to_send[_cnt++]=0xAA; data_to_send[_cnt++]=0x05; data_to_send[_cnt++]=0; data_to_send[_cnt++]=BYTE1(ADC_ConvertedValue); data_to_send[_cnt++]=BYTE0(ADC_ConvertedValue); data_to_send[_cnt++]=BYTE1(ADC_ConvertedValue); data_to_send[_cnt++]=BYTE0(ADC_ConvertedValue); data_to_send[_cnt++]=BYTE1(ADC_ConvertedValue); data_to_send[_cnt++]=BYTE0(ADC_ConvertedValue); data_to_send[_cnt++]=BYTE1(ADC_ConvertedValue); data_to_send[_cnt++]=BYTE0(ADC_ConvertedValue); data_to_send[3] = _cnt-4; u8 sum = 0; for(u8 i=0;i<_cnt;i++) sum += data_to_send[i]; data_to_send[_cnt++]=sum; #ifdef DATA_TRANSFER_USE_USART Uart2_Put_Buf(data_to_send,_cnt); #else NRF_TxPacket(data_to_send,_cnt); #endif }
void Data_Send_Check(u16 check) { data_to_send[0]=0xAA; data_to_send[1]=0xAA; data_to_send[2]=0xF0; data_to_send[3]=3; data_to_send[4]=0xBA; data_to_send[5]=BYTE1(check); data_to_send[6]=BYTE0(check); u8 sum = 0; for(u8 i=0;i<7;i++) sum += data_to_send[i]; data_to_send[7]=sum; data_to_send[8]=PID_PIT.P; data_to_send[9]=PID_PIT.I; data_to_send[10]=PID_PIT.D; data_to_send[11]=PID_ROL.P; data_to_send[12]=PID_ROL.I; data_to_send[13]=PID_ROL.D; data_to_send[14]=PID_YAW.P; data_to_send[15]=PID_YAW.I; data_to_send[16]=PID_YAW.D; // NRF_TxPacket(data_to_send,8); Uart2_Put_Buf(data_to_send,17); }
void Data_Send_MotoPWM(void) { vs16 a,b,c,d; a=Moto_PWM_1-1000; b=Moto_PWM_2-1000; c=Moto_PWM_3-1000; d=Moto_PWM_4-1000; u8 _cnt=0; data_to_send[_cnt++]=0xAA; data_to_send[_cnt++]=0xAA; data_to_send[_cnt++]=0x06; data_to_send[_cnt++]=0; data_to_send[_cnt++]=BYTE1(a);//((Moto_PWM_1-1000)); data_to_send[_cnt++]=BYTE0(a);//((Moto_PWM_1-1000)); data_to_send[_cnt++]=BYTE1(b);//((Moto_PWM_2-1000)); data_to_send[_cnt++]=BYTE0(b);//((Moto_PWM_2-1000)); data_to_send[_cnt++]=BYTE1(c);//((Moto_PWM_3-1000)); data_to_send[_cnt++]=BYTE0(c);//((Moto_PWM_3-1000)); data_to_send[_cnt++]=BYTE1(d);//((Moto_PWM_4-1000)); data_to_send[_cnt++]=BYTE0(d);//((Moto_PWM_4-1000)); data_to_send[3] = _cnt-4; u8 sum = 0; for(u8 i=0;i<_cnt;i++) sum += data_to_send[i]; data_to_send[_cnt++]=sum; #ifdef DATA_TRANSFER_USE_USART Uart2_Put_Buf(data_to_send,_cnt); #else NRF_TxPacket(data_to_send,_cnt); #endif }
void Data_Send_RCData(void) { u8 _cnt=0; data_to_send[_cnt++]=0xAA; data_to_send[_cnt++]=0xAA; data_to_send[_cnt++]=0x03; data_to_send[_cnt++]=0; data_to_send[_cnt++]=BYTE1(Rc_D.THROTTLE); data_to_send[_cnt++]=BYTE0(Rc_D.THROTTLE); data_to_send[_cnt++]=BYTE1(Rc_D.YAW); data_to_send[_cnt++]=BYTE0(Rc_D.YAW); data_to_send[_cnt++]=BYTE1(Rc_D.ROLL); data_to_send[_cnt++]=BYTE0(Rc_D.ROLL); data_to_send[_cnt++]=BYTE1(Rc_D.PITCH); data_to_send[_cnt++]=BYTE0(Rc_D.PITCH); data_to_send[3] = _cnt-4; u8 sum = 0; for(u8 i=0;i<_cnt;i++) sum += data_to_send[i]; data_to_send[_cnt++]=sum; #ifdef DATA_TRANSFER_USE_USART Uart2_Put_Buf(data_to_send,_cnt); #else NRF_TxPacket(data_to_send,_cnt); #endif }
void Data_Send_PID2(void) { u8 _cnt=0,sum = 0,i; vs16 _temp; data_to_send[_cnt++]=0xAA; data_to_send[_cnt++]=0xAA; data_to_send[_cnt++]=0x11; data_to_send[_cnt++]=0; _temp = 0; data_to_send[_cnt++]=BYTE1(_temp); data_to_send[_cnt++]=BYTE0(_temp); _temp = 0; data_to_send[_cnt++]=BYTE1(_temp); data_to_send[_cnt++]=BYTE0(_temp); _temp = 0; data_to_send[_cnt++]=BYTE1(_temp); data_to_send[_cnt++]=BYTE0(_temp); _temp = 0; data_to_send[_cnt++]=BYTE1(_temp); data_to_send[_cnt++]=BYTE0(_temp); _temp = 0; data_to_send[_cnt++]=BYTE1(_temp); data_to_send[_cnt++]=BYTE0(_temp); _temp = 0; data_to_send[_cnt++]=BYTE1(_temp); data_to_send[_cnt++]=BYTE0(_temp); _temp = 0; data_to_send[_cnt++]=BYTE1(_temp); data_to_send[_cnt++]=BYTE0(_temp); _temp = 0; data_to_send[_cnt++]=BYTE1(_temp); data_to_send[_cnt++]=BYTE0(_temp); _temp = 0; data_to_send[_cnt++]=BYTE1(_temp); data_to_send[_cnt++]=BYTE0(_temp); data_to_send[3] = _cnt-4; for(i = 0;i<_cnt;i++) sum += data_to_send[i]; data_to_send[_cnt++]=sum; Uart2_Put_Buf(data_to_send,_cnt); }
void Data_Send_Check(u16 check) { u8 sum = 0,i; data_to_send[0]=0xAA; data_to_send[1]=0xAA; data_to_send[2]=0xF0; data_to_send[3]=3; data_to_send[4]=0xBA; data_to_send[5]=BYTE1(check); data_to_send[6]=BYTE0(check); for(i = 0;i<7;i++) sum += data_to_send[i]; data_to_send[7]=sum; Uart2_Put_Buf(data_to_send,8); }
void Data_Send_Status(void) { u8 _cnt=0; data_to_send[_cnt++]=0xAA; data_to_send[_cnt++]=0xAA; data_to_send[_cnt++]=0x01; data_to_send[_cnt++]=0; vs16 _temp; _temp = (int)(Att_Angle.rol*100); data_to_send[_cnt++]=BYTE1(_temp); data_to_send[_cnt++]=BYTE0(_temp); _temp = (int)(Att_Angle.pit*100); data_to_send[_cnt++]=BYTE1(_temp); data_to_send[_cnt++]=BYTE0(_temp); _temp = (int)(Att_Angle.yaw*100); //_temp = (int)(Mag_Heading*100); data_to_send[_cnt++]=BYTE1(_temp); data_to_send[_cnt++]=BYTE0(_temp); vs32 _temp2 = Alt; data_to_send[_cnt++]=BYTE3(_temp2); data_to_send[_cnt++]=BYTE2(_temp2); data_to_send[_cnt++]=BYTE1(_temp2); data_to_send[_cnt++]=BYTE0(_temp2); if(Rc_C.ARMED==0) data_to_send[_cnt++]=0xA0; //Ëø¶¨ else if(Rc_C.ARMED==1) data_to_send[_cnt++]=0xA1; data_to_send[3] = _cnt-4; u8 sum = 0; for(u8 i=0;i<_cnt;i++) sum += data_to_send[i]; data_to_send[_cnt++]=sum; #ifdef DATA_TRANSFER_USE_USART Uart2_Put_Buf(data_to_send,_cnt); #else NRF_TxPacket(data_to_send,_cnt); #endif }