Exemple #1
0
void set_aircaft_preparing_status(unsigned char *buf)
{
    FILE *fp;
    int i;

    memcpy((uint8*)(&aircraft_preparing_status), buf, sizeof(aircraft_preparing_status));
	update_setting_status(&aircraft_preparing_status);

	if((fp=fopen(HELI_CONFIGURATION,"w+"))==NULL){
      printf("can not open heli configuration file\n");
      return ;
    }
    for(i=0;i<11;i++)
        fprintf(fp,"%u,",*(((uint8*)&aircraft_preparing_status)+i));
    fclose(fp);

    switch(aircraft_preparing_status.o_fp){
        case SERVO_PWM_PERIOD_20:
        	set_servo_pwm_period(20000);
        	break;
        case SERVO_PWM_PERIOD_14:
        	set_servo_pwm_period(14000);
        	break;
        case SERVO_PWM_PERIOD_7:
            set_servo_pwm_period(7000);
            break;
        case SERVO_PWM_PERIOD_3:
            set_servo_pwm_period(3031);
            break;
        default:
        	break;
        }

	printf("------------------heli config----------------------\n");
	printf("heli type:%4d ,oil_m  :%4d\n",aircraft_preparing_status.h_tp,aircraft_preparing_status.om);
	printf("fuel_cons:%4d ,  cp_tp:%4d\n",aircraft_preparing_status.fc,gsfstate.CP_tp);
	printf("servo_fre:%4d ,     tg:%4d\n",aircraft_preparing_status.o_fp,gsfstate.tg);
	printf("    max_v:%4d , gps_tp:%4d\n",gsfstate.max_v,aircraft_preparing_status.g_tp);
	printf("    radar:%4d ,   rsv1:%4d\n",gsfstate.radar,aircraft_preparing_status.reserved1);
	printf("     rsv2:%4d\n",aircraft_preparing_status.reserved2);
}
Exemple #2
0
static void heli_configuration_init()
{
    FILE *fp_heli_config;
    uint32 buf[11];
    int i;
	if((fp_heli_config=fopen(HELI_CONFIGURATION,"r"))==NULL){
      printf("can not open heli configuration file\n");
      return ;
    }
    for(i=0;i<11;i++){
        if(fscanf(fp_heli_config,"%u,",buf+i)==EOF){
        	print_err("heli configuration file error\n");
        	fclose(fp_heli_config);
        	return;
        }
    }
    fclose(fp_heli_config);
    for(i=0;i<11;i++)
    	*((uint8*)(&aircraft_preparing_status)+i)=(uint8)(buf[i]&0xff);
	update_setting_status(&aircraft_preparing_status);

    switch(aircraft_preparing_status.o_fp){
    case SERVO_PWM_PERIOD_20:
    	set_servo_pwm_period(20000);
    	break;
    case SERVO_PWM_PERIOD_14:
    	set_servo_pwm_period(14000);
    	break;
    case SERVO_PWM_PERIOD_7:
        set_servo_pwm_period(7000);
        break;
    case SERVO_PWM_PERIOD_3:
        set_servo_pwm_period(3031);
        break;
    default:
    	break;
    }
}
Exemple #3
0
void set_aircaft_preparing_status(unsigned char *buf)
{
	memcpy((uint8*)(&aircraft_preparing_status), buf, sizeof(aircraft_preparing_status));
	update_setting_status(&aircraft_preparing_status);
}