SSLM1 / Mbed 2 deprecated 4_sensor-Integration-function2

Dependencies:   mbed 2_P7100 2_EEPROM 2_MPU9250

Files at this revision

API Documentation at this revision

Comitter:
rary
Date:
Fri Jul 10 16:17:22 2020 +0000
Parent:
0:f282852e22f1
Commit message:
republish

Changed in this revision

EEPROM.lib Show annotated file Show diff for this revision Revisions of this file
main.cpp Show annotated file Show diff for this revision Revisions of this file
--- a/EEPROM.lib	Thu Jul 09 16:45:51 2020 +0000
+++ b/EEPROM.lib	Fri Jul 10 16:17:22 2020 +0000
@@ -1,1 +1,1 @@
-https://os.mbed.com/teams/SSLM1/code/2_EEPROM/#1e1168781a7d
+https://os.mbed.com/teams/SSLM1/code/2_EEPROM/#9badac067403
--- a/main.cpp	Thu Jul 09 16:45:51 2020 +0000
+++ b/main.cpp	Fri Jul 10 16:17:22 2020 +0000
@@ -13,51 +13,58 @@
 
 void sensor_get_save(int);                     //自作関数プロトタイプ宣言
 
-#define ADDR 0xA0                           //EEPROMコントロールアドレス
 int pointerAddress = 0;                     //EEPROM保存アドレス
 
 //main
 int main()
 {
     char data_read[128];
-
     pc.baud(460800);                           //ボーレート変更
+    char ADDR;                                 //アドレス
     
     t.start();                                 //timer Start
     
     pc.printf("Start!");
     
+    //Setup
     lps.start(1);                           //気圧センサスタート
     lps.start(1);                           //気圧センサスタート
-    wait(0.5);
-    
+    wait(0.1);
     mpu.start();                            //MPU9250 start&setup
     mpu.accelsetup(3);
     mpu.gyrosetup(3);
     mpu.AKsetup(1);
-    wait(0.5);
+    wait(0.2);
+    
     
-    for(int n = 0; n < 100; n++) {          //data get&save
+    //data get&save
+    for(int n = 0; n <= 4000; n++) {          
         sensor_get_save(n);
         wait_ms(0);
     }
 
+
     //read the data
     pointerAddress = 0;
     pc.printf("Data read\r\n");
-
-    for(int n = 0; n < 100; n++) {
+    
+    for(int n = 0; n <= 4000; n++) {
+        ADDR = rom.ref_ADDR(n);
         rom.read(ADDR, pointerAddress, data_read, 128);
         wait_ms(5);
-        pc.printf("%s", data_read);
-
+        pc.printf("%d, %s", pointerAddress, data_read);
+        
+        if(pointerAddress == 1000*128){pointerAddress = -128;}
         pointerAddress = pointerAddress + 128;         //アドレスずらし
         memset(data_read, '\0', 128 );                 //初期化
     }
 
+
     pc.printf("Finish");
 }
 
+
+
 void sensor_get_save(int n)
 {   
     char s[64];                                 //データ取得配列
@@ -81,10 +88,10 @@
 
     sprintf(s, "%8.3f %8.3f %6.3f %5.3f %5.2f %5.2f %5.2f %5.2f %5.2f\r\n", T, P, tp, AX, AY, AZ, GX, GY, GZ);    //floatからchar*へ変換
     
-    rom.write(ADDR, pointerAddress, s, 64);        // write tha data
+    rom.write_high(pointerAddress, s, 64);        // write tha data
     pointerAddress = pointerAddress + 64;          //アドレスずらし
     
-    pc.printf("%s\r\n", s);         //check用
+    pc.printf("%d, %s\r\n", n, s);         //check用
 
     memset(s, '\0', 64 );                          //初期化
 }