Committer:
agiembed
Date:
Tue Aug 16 05:32:33 2011 +0000
Revision:
0:d463d5c04541

        

Who changed what in which revision?

UserRevisionLine numberNew contents of line
agiembed 0:d463d5c04541 1 char gud = 0, flag_com = 1, check_error = start;
agiembed 0:d463d5c04541 2
agiembed 0:d463d5c04541 3 void Get_GPS(char *data) //F_Mode[F_Mode_num]
agiembed 0:d463d5c04541 4 {
agiembed 0:d463d5c04541 5 int i;
agiembed 0:d463d5c04541 6 char *pTemp = (char *) &gps; //Fligth Mode Data
agiembed 0:d463d5c04541 7
agiembed 0:d463d5c04541 8 for(i=0;i<GPS_num;i++) *(pTemp+i) = *(data+i); //F_Mode[F_Mode_num]
agiembed 0:d463d5c04541 9 gpscal();
agiembed 0:d463d5c04541 10 }
agiembed 0:d463d5c04541 11
agiembed 0:d463d5c04541 12 void Get_Mode(char *data) //F_Mode[F_Mode_num]
agiembed 0:d463d5c04541 13 {
agiembed 0:d463d5c04541 14 int i;
agiembed 0:d463d5c04541 15 char *pTemp = (char *) &FMD; //Fligth Mode Data
agiembed 0:d463d5c04541 16
agiembed 0:d463d5c04541 17 for(i=0;i<2;i++) *(pTemp+i) = *(data+i); //F_Mode[F_Mode_num]
agiembed 0:d463d5c04541 18 //toGCS();
agiembed 0:d463d5c04541 19 }
agiembed 0:d463d5c04541 20
agiembed 0:d463d5c04541 21 void GCS_data(char data)
agiembed 0:d463d5c04541 22 {
agiembed 0:d463d5c04541 23 if(check_error == start)
agiembed 0:d463d5c04541 24 {
agiembed 0:d463d5c04541 25 if(data == head1) check_error = check1;
agiembed 0:d463d5c04541 26 else check_error = start;
agiembed 0:d463d5c04541 27 }
agiembed 0:d463d5c04541 28
agiembed 0:d463d5c04541 29 else if(check_error == check1)
agiembed 0:d463d5c04541 30 {
agiembed 0:d463d5c04541 31 if(data == head2) check_error = check2;
agiembed 0:d463d5c04541 32 else if(data == Flight_Start_bit2) check_error = check3;
agiembed 0:d463d5c04541 33 else check_error = start;
agiembed 0:d463d5c04541 34 }
agiembed 0:d463d5c04541 35
agiembed 0:d463d5c04541 36 else if((check_error == check2)&&(data != End_bit))
agiembed 0:d463d5c04541 37 {
agiembed 0:d463d5c04541 38 GPS[data_cnt] = data;
agiembed 0:d463d5c04541 39 if(data_cnt<(GPS_num-1)) data_cnt++;
agiembed 0:d463d5c04541 40 else
agiembed 0:d463d5c04541 41 {
agiembed 0:d463d5c04541 42 Get_GPS(GPS);
agiembed 0:d463d5c04541 43 data_cnt = 0;
agiembed 0:d463d5c04541 44 check_error = start;
agiembed 0:d463d5c04541 45 }
agiembed 0:d463d5c04541 46 }
agiembed 0:d463d5c04541 47
agiembed 0:d463d5c04541 48 else if((check_error == check3)&&(data != End_bit))
agiembed 0:d463d5c04541 49 {
agiembed 0:d463d5c04541 50 Mode[data_cnt] = data;
agiembed 0:d463d5c04541 51 if(data_cnt<(2-1)) data_cnt++;
agiembed 0:d463d5c04541 52 else
agiembed 0:d463d5c04541 53 {
agiembed 0:d463d5c04541 54 Get_Mode(Mode);
agiembed 0:d463d5c04541 55 data_cnt = 0;
agiembed 0:d463d5c04541 56 check_error = start;
agiembed 0:d463d5c04541 57 }
agiembed 0:d463d5c04541 58 }
agiembed 0:d463d5c04541 59
agiembed 0:d463d5c04541 60 else
agiembed 0:d463d5c04541 61 {
agiembed 0:d463d5c04541 62 data_cnt = 0;
agiembed 0:d463d5c04541 63 check_error = start;
agiembed 0:d463d5c04541 64 }
agiembed 0:d463d5c04541 65 }
agiembed 0:d463d5c04541 66
agiembed 0:d463d5c04541 67
agiembed 0:d463d5c04541 68 void getGCS(){
agiembed 0:d463d5c04541 69 unsigned char data;
agiembed 0:d463d5c04541 70 data = radio.getc();
agiembed 0:d463d5c04541 71 //GCS_data(data);
agiembed 0:d463d5c04541 72 radio.putc(radio.getc());
agiembed 0:d463d5c04541 73 }