2017年度の製作を開始します。

Dependencies:   BufferedSoftSerial2 SDFileSystem-RTOS mbed mbed-rtos INA226_ver1

Fork of keiki2016ver5 by albatross

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++;