kinuko hayashi
/
Register_set_completed2
adf7021
Revision 4:725abca6e504, committed 2021-02-09
- Comitter:
- KINU
- Date:
- Tue Feb 09 15:57:04 2021 +0000
- Parent:
- 3:be6612928d04
- Commit message:
- completed2
Changed in this revision
main.cpp | Show annotated file Show diff for this revision Revisions of this file |
--- a/main.cpp Tue Feb 09 15:36:17 2021 +0000 +++ b/main.cpp Tue Feb 09 15:57:04 2021 +0000 @@ -3,6 +3,7 @@ Serial device( p9, p10, 9600); #define kHz 1000 #define MHz 1000000 +#define PFD 19.68 LocalFileSystem local("local"); class calsat32 @@ -52,15 +53,14 @@ int l = 1;//行数 uint32_t _register = 0;//最終的に欲しいレジスタの値.32ビット while ( fscanf(fp,"%[^,],%d,%d%d",name, ®ister_data,&length,&buf) != EOF ) { - if(l == 1 || l == 14 || l == 21 || l == 26 || l == 36) { - // printf("%d\n",l); + if(l == 1 || l == 14 || l == 21 || l == 26 || l == 36) l++; - } else { + else { printf("%d %d \r\n",register_data, length ); - //calsatから受け取った値を格納するとき - if(register_num == 3 && size == 4 ) { + //レジスタ0にcalsatから受け取った値を格納するとき + if(register_num == 3 && size == 4 ) { Shift_bit(_register, binary(command), 4); size = 27; } @@ -82,16 +82,11 @@ register_num++; _register = 0; size = 0; - /* - if(register_num == 5) - size = 6; - */ } //printf("%s %d %d\n",name,register_data,length); - //size += length; どこにおけばいいかわからん l++; - }//else 閉じる + } } /* ファイルのクローズ */ fclose(fp); @@ -99,8 +94,8 @@ uint32_t binary(char* command) { - double num = doppler(command); - double n = num * 2 / 19.68; + double RFout = doppler(command); + double n = RFout * 2 / PFD; Integer_N = (int)n; double test = (n - (int)n); Fractional_N = test*32768; @@ -121,8 +116,8 @@ flag += 2; } - doppler_data = 10 * data[0] + data[1] + kHz * data[2] + 100 * data[3] + 100*kHz * data[4] + 10*kHz * data[5] + 10*MHz * data[6] + MHz * data[7] + data[8] + 100*MHz * data[9]; - printf("\n%lf\r\n",doppler_data / 1000000); + doppler_data = 10 * data[0] + data[1] + kHz * data[2] + 100 * data[3] + 100*kHz * data[4] + 10*kHz * data[5] + 10*MHz * data[6] + MHz * data[7] + data[8] + 100*MHz * data[9];//Hz + printf("\n%lf\r\n",doppler_data / 1000000); //Mhz return doppler_data / 1000000; } @@ -144,7 +139,7 @@ { while(1) { char c = device.getc(); - + if(c == 0xfe) { //FEコマンドがきたらdataが始まる char command[128] = {}; @@ -166,7 +161,7 @@ break; } } - - } + + } return 0; }