
Lab 7
Fork of AltTest2 by
Diff: main.cpp
- Revision:
- 3:93ba3e6cdaf3
- Parent:
- 2:126622942102
- Child:
- 4:eaaf67c5e1ca
--- a/main.cpp Fri Mar 02 01:07:57 2018 +0000 +++ b/main.cpp Fri Mar 02 17:41:05 2018 +0000 @@ -16,11 +16,7 @@ } */ int MPL3115A2_reg_print(int start, int length) { - int num_regs = length; //redundant, but it helps me think - uint8_t valArray[num_regs]; //the array of register values we'll be returning - pressure_sensor.readRegs(start, valArray, num_regs - 1); //populates valArray with register values, one per element, starting at i - if(length == 0) length = 45; int i = start, end = start + length; @@ -32,8 +28,13 @@ return(-1); if (end > 46) return(-1); - - for( i = start; i <= end; i++) { + + printf("Hola\n\r"); + uint8_t valArray[10]; //the array of register values we'll be returning + for(int j = 0; j<10; j++) + valArray[j] = 7; + + for( i = start; i <=end; i++) { char name[25]; switch (i) { case 0x00: @@ -176,28 +177,41 @@ break; default: printf("ERR\n\r"); - } - printf("0x%02X: %s = ", i, name); - for(int j = 0; j < num_regs; j++) - printf("%d\n\r", valArray[j]); - printf("\n\r"); + } + pressure_sensor.readRegs(i, valArray, 1); + printf("0x%02X: %s = 0x%02x\n\r", i, name, valArray[0]); + } return(0); } - int main() { - int 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); - wait_ms(500); + int start, length, return_val; + uint8_t id; + printf("Hola\n\r"); + printf("Enter start: \n\r"); + scanf("%d", &start); + printf("Enter length: \n\r"); + scanf("%d", &length); + printf("Printing registers: \n\r"); + return_val = MPL3115A2_reg_print(start, length); + printf("%d\n\r", return_val); + pc.printf("\n\r*** MPL3115A2 Pressure/Temperature Sensor Test *** \n\r"); + while ((id=pressure_sensor.getID())!=0xC4) { + pc.printf("Status read unsuccessful: Value = 0x%02x\n\r",id); + pc.printf("Check wiring to the pressure sensor\n\r",id); + pc.printf("Retesting for correct ID in 1 second...\n\r"); + wait(1); } + pc.printf("Status read successfully: Value = 0x%02x\n\r",id); + pc.printf("***1hz readings from the pressure sensor***\n\r"); + while(1) { + pc.printf("%f hPA; %f m\n\r",pressure_sensor.getPressure(),pressure_sensor.getAltitude()); + myled = !myled; + wait(1); + } + //no return; while(1) never exited } \ No newline at end of file