2017年度の製作を開始します。
Dependencies: BufferedSoftSerial2 SDFileSystem-RTOS mbed mbed-rtos INA226_ver1
Fork of keiki2016ver5 by
Diff: main.cpp
- Branch:
- SDandCadenceThread
- Revision:
- 72:bb664e4378a0
- Parent:
- 71:c06da87572f1
- Child:
- 73:2122c87cac9b
--- a/main.cpp Fri Jun 16 08:06:21 2017 +0000 +++ b/main.cpp Fri Jun 16 12:32:54 2017 +0000 @@ -74,13 +74,15 @@ //DigitalOut led3(LED3); DigitalOut led4(LED4); I2C InaI2c(p9,p10); -//INA226 VCmonitor(InaI2c,0x9C); +INA226 VCmonitor(InaI2c,0x9C); AnalogIn mgPin(p20); AnalogIn mgPin2(p16); char soudaDatas[SOUDA_DATAS_NUM]; float writeDatas[SD_WRITE_NUM][WRITE_DATAS_NUM]; volatile int write_datas_index = 0; +float inputR,inputL; +int drugR,drugL; void air_countUp(); void call_calcAirSpeed(); @@ -207,11 +209,11 @@ //----------------------------------------------------------- unsigned short val; val = 0; -// if(VCmonitor.rawRead(0x00,&val) != 0) { -// printf("VCmonitor READ ERROR\n"); -// while(1) {} -// } -// VCmonitor.setCurrentCalibration(); + if(VCmonitor.rawRead(0x00,&val) != 0) { + printf("VCmonitor READ ERROR\n"); + while(1) {} + } + VCmonitor.setCurrentCalibration(); } void FusokukeiInit() @@ -293,6 +295,8 @@ void DataReceiveFromSouda(/*void const *arg*/) { + char cErebonR[5]; + char cErebonL[5]; // while(1){ if(soudaSerial.readable()) { led2 = !led2; @@ -302,7 +306,22 @@ } for(int i = 0; i < SOUDA_DATAS_NUM; i++) { soudaDatas[i] = soudaSerial.getc(); + // pc.printf("%d,",(int)(soudaDatas[i] - '0')); } + // pc.printf("\n\r"); + // sscanf(soudaDatas+YOKUTAN_DATAS_NUM,"%5.2f,%d,%5.2,%d",&inputR,&drugR,&inputL,&drugL); + for(int i = 14; i < 19; i++) { + cErebonR[i] = soudaDatas[i]; + } + drugR = soudaDatas[19]- '0'; + inputR = atof(cErebonR); + for(int i = 21; i < 26; i++) { + cErebonL[i] = soudaDatas[i]; + } + drugL = soudaDatas[26]- '0'; + inputL = atof(cErebonL); + + pc.printf("erebonR:%5.5f, drugR:%d erebonL:%5.5f drugL:%d",inputR,drugR,inputL,drugL); }//if // }//while(1) } @@ -378,14 +397,15 @@ for(int i = 0; i <YOKUTAN_DATAS_NUM ; i++) { // pc.printf("%i ",soudaDatas[i]); // twe.printf("%i,",soudaDatas[i]); - p += sprintf(sbuf+p,"%i,",soudaDatas[i]); + p += sprintf(sbuf+p,"%d,",soudaDatas[i]); if(i == YOKUTAN_DATAS_NUM - 1) // twe.printf("%i\n",soudaDatas[i]); - p += sprintf(sbuf+p,"%i\n",soudaDatas[i]); + p += sprintf(sbuf+p,"%d\n",soudaDatas[i]); } twe.printf("%s",sbuf); - twe.printf("inp,%d,%i,%d,%i\n",soudaDatas[YOKUTAN_DATAS_NUM],soudaDatas[sizeof(int) + YOKUTAN_DATAS_NUM + 2],(int)soudaDatas[SOUDA_DATAS_NUM - sizeof(int) - 3],soudaDatas[SOUDA_DATAS_NUM-1]); +// twe.printf("inp,%f,%i,%f,%i\n",soudaDatas[YOKUTAN_DATAS_NUM],soudaDatas[sizeof(float) + YOKUTAN_DATAS_NUM + 2],(int)soudaDatas[SOUDA_DATAS_NUM - sizeof(float) - 3],soudaDatas[SOUDA_DATAS_NUM-1]); + twe.printf("inp,%f,%i,%f,%i\n",inputR,drugR,inputL,drugL); /* 送信文字列 @@ -456,9 +476,9 @@ int VCcounter = 0; while(1) { if(VCcounter%20 == 0 ) { -// if( VCmonitor.getVoltage(&V) == 0) { -// pc.printf("e:%f\n",V); -// } + if( VCmonitor.getVoltage(&V) == 0) { + pc.printf("e:%f\n",V); + } } VCcounter++;