Lab 7

Dependencies:   MPL3115A2 mbed

Fork of AltTest2 by CPS_Lab*

Revision:
1:03565a1413e6
Parent:
0:d7735965d4ca
Child:
2:126622942102
--- a/main.cpp	Thu Mar 01 15:37:18 2018 +0000
+++ b/main.cpp	Thu Mar 01 18:18:19 2018 +0000
@@ -16,8 +16,9 @@
 }
 */
 int MPL3115A2_reg_print(int start, int length) {
-    uint8_t valArray[7];
-    int len = 5;
+    int num_regs = length;  //redundant, but it helps me think
+    uint8_t valArray[num_regs];  //the array of register values we'll be returning
+    
     if(length == 0)
         length = 45;
     int i = start, end = start + length;     
@@ -31,7 +32,7 @@
         return(-1);
     for( i = start; i <= end; i++) {
         char name[25];
-        MPL3115A2::readRegs(i, valArray, len);
+        pressure_sensor.readRegs(i, valArray, num_regs - 1);
         switch (i) {
                 case 0x00:
                     strcpy(name,"MPL_STATUS");
@@ -175,8 +176,8 @@
                     printf("ERR\n\r");
         }    
         printf("0x%02X: %s = ", i, name);
-        for(int j = 0; j < 8; j++)
-            printf("%d", valArray[j]);
+        for(int j = 0; j < num_regs; j++)
+            printf("%d\n\r", valArray[j]);
         printf("\n\r"); 
         
     }
@@ -187,11 +188,13 @@
 
 int main() {
     int return_val, start, length;
-    
-    printf("Enter start: \n\r");
-    scanf("%d", &start);
-    printf("Enter length: \n\r");
-    scanf("%d", &length);
-    return_val = MPL3115A2_reg_print(start, length);
-            
+    while (1){
+        printf("Enter start: \n\r");
+        scanf("%d", &start);
+        printf("Enter length: \n\r");
+        scanf("%d", &length);
+        printf("Printing registers: \n\r");
+        MPL3115A2_reg_print(start, length);
+    }
+    return (0);        
 } 
\ No newline at end of file