ajout de l'imu pour nucleo
Dependencies: mbed HC_SR04_Ultrasonic_Library IMU_FIP_nucleo Nucleo_Sensor_Shield VL6180x_lib
main.cpp@7:dc76d89a8d51, 2015-04-10 (annotated)
- Committer:
- quentin9696
- Date:
- Fri Apr 10 22:11:39 2015 +0000
- Revision:
- 7:dc76d89a8d51
- Parent:
- 2:32226f1d12e5
- Child:
- 8:e3d7a4a34088
modif main pour test IMU;
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
julientiron | 0:72eb2b48a9e4 | 1 | #include "mbed.h" |
julientiron | 2:32226f1d12e5 | 2 | #include "ultrasonic.h" |
quentin9696 | 7:dc76d89a8d51 | 3 | #include "Imu.h" |
julientiron | 2:32226f1d12e5 | 4 | |
quentin9696 | 7:dc76d89a8d51 | 5 | /* |
julientiron | 2:32226f1d12e5 | 6 | void dist(int distance) |
julientiron | 2:32226f1d12e5 | 7 | { |
julientiron | 2:32226f1d12e5 | 8 | //put code here to happen when the distance is changed |
julientiron | 2:32226f1d12e5 | 9 | printf("Distance changed to %dmm\r\n", distance); |
julientiron | 2:32226f1d12e5 | 10 | } |
julientiron | 2:32226f1d12e5 | 11 | |
julientiron | 2:32226f1d12e5 | 12 | ultrasonic mu(D8, D9, .1, 1, &dist); //Set the trigger pin to D8 and the echo pin to D9 |
julientiron | 2:32226f1d12e5 | 13 | //have updates every .1 seconds and a timeout after 1 |
julientiron | 2:32226f1d12e5 | 14 | //second, and call dist when the distance changes |
julientiron | 2:32226f1d12e5 | 15 | |
julientiron | 2:32226f1d12e5 | 16 | int main() |
julientiron | 2:32226f1d12e5 | 17 | { |
julientiron | 2:32226f1d12e5 | 18 | mu.startUpdates();//start mesuring the distance |
julientiron | 2:32226f1d12e5 | 19 | while(1) |
julientiron | 2:32226f1d12e5 | 20 | { |
julientiron | 2:32226f1d12e5 | 21 | //Do something else here |
julientiron | 2:32226f1d12e5 | 22 | mu.checkDistance(); //call checkDistance() as much as possible, as this is where |
julientiron | 2:32226f1d12e5 | 23 | //the class checks if dist needs to be called. |
julientiron | 2:32226f1d12e5 | 24 | } |
quentin9696 | 7:dc76d89a8d51 | 25 | }*/ |
quentin9696 | 7:dc76d89a8d51 | 26 | |
quentin9696 | 7:dc76d89a8d51 | 27 | Imu i; |
quentin9696 | 7:dc76d89a8d51 | 28 | Serial pc(SERIAL_TX, SERIAL_RX); |
quentin9696 | 7:dc76d89a8d51 | 29 | DigitalOut myled(LED1); |
quentin9696 | 7:dc76d89a8d51 | 30 | Data_IMU * foo; |
quentin9696 | 7:dc76d89a8d51 | 31 | Data_IMU * bar; |
quentin9696 | 7:dc76d89a8d51 | 32 | |
quentin9696 | 7:dc76d89a8d51 | 33 | int main() |
quentin9696 | 7:dc76d89a8d51 | 34 | { |
quentin9696 | 7:dc76d89a8d51 | 35 | |
quentin9696 | 7:dc76d89a8d51 | 36 | i.setOffset(); |
quentin9696 | 7:dc76d89a8d51 | 37 | foo = i.getOffset(); |
quentin9696 | 7:dc76d89a8d51 | 38 | bar = i.getData(); |
quentin9696 | 7:dc76d89a8d51 | 39 | |
quentin9696 | 7:dc76d89a8d51 | 40 | while(1) { |
quentin9696 | 7:dc76d89a8d51 | 41 | |
quentin9696 | 7:dc76d89a8d51 | 42 | myled = 1; // LED is ON |
quentin9696 | 7:dc76d89a8d51 | 43 | wait(0.2); // 200 ms |
quentin9696 | 7:dc76d89a8d51 | 44 | myled = 0; // LED is OFF |
quentin9696 | 7:dc76d89a8d51 | 45 | wait(10); |
quentin9696 | 7:dc76d89a8d51 | 46 | |
quentin9696 | 7:dc76d89a8d51 | 47 | i.refresh(1); |
quentin9696 | 7:dc76d89a8d51 | 48 | |
quentin9696 | 7:dc76d89a8d51 | 49 | |
quentin9696 | 7:dc76d89a8d51 | 50 | pc.printf("OFFSET : \r\n"); |
quentin9696 | 7:dc76d89a8d51 | 51 | pc.printf("Temperature:\t\t %f C\r\n", foo->TEMPERATURE_Value_C); |
quentin9696 | 7:dc76d89a8d51 | 52 | pc.printf("Humidity:\t\t %f%%\r\n", foo->HUMIDITY_Value); |
quentin9696 | 7:dc76d89a8d51 | 53 | pc.printf("Pressure:\t\t %f hPa\r\n", foo->PRESSURE_Value); |
quentin9696 | 7:dc76d89a8d51 | 54 | pc.printf("Magnetometer (mGauss):\t X: %d, Y: %d, Z: %d\r\n", foo->MAG_Value->AXIS_X, foo->MAG_Value->AXIS_Y, foo->MAG_Value->AXIS_Z); |
quentin9696 | 7:dc76d89a8d51 | 55 | pc.printf("Accelerometer (mg):\t X: %d, Y: %d, Z: %d\r\n", foo->ACC_Value->AXIS_X, foo->ACC_Value->AXIS_Y, foo->ACC_Value->AXIS_Z); |
quentin9696 | 7:dc76d89a8d51 | 56 | pc.printf("Gyroscope (mdps):\t X: %d, Y: %d, Z: %d\r\n", foo->GYR_Value->AXIS_X, foo->GYR_Value->AXIS_Y, foo->GYR_Value->AXIS_Z); |
quentin9696 | 7:dc76d89a8d51 | 57 | pc.printf("\r\n"); |
quentin9696 | 7:dc76d89a8d51 | 58 | |
quentin9696 | 7:dc76d89a8d51 | 59 | pc.printf("OFFSET DATA : \r\n"); |
quentin9696 | 7:dc76d89a8d51 | 60 | pc.printf("Temperature:\t\t %f C\r\n", bar->TEMPERATURE_Value_C); |
quentin9696 | 7:dc76d89a8d51 | 61 | pc.printf("Humidity:\t\t %f%%\r\n", bar->HUMIDITY_Value); |
quentin9696 | 7:dc76d89a8d51 | 62 | pc.printf("Pressure:\t\t %f hPa\r\n", bar->PRESSURE_Value); |
quentin9696 | 7:dc76d89a8d51 | 63 | pc.printf("Magnetometer (mGauss):\t X: %d, Y: %d, Z: %d\r\n", bar->MAG_Value->AXIS_X, bar->MAG_Value->AXIS_Y, bar->MAG_Value->AXIS_Z); |
quentin9696 | 7:dc76d89a8d51 | 64 | pc.printf("Accelerometer (mg):\t X: %d, Y: %d, Z: %d\r\n", bar->ACC_Value->AXIS_X, bar->ACC_Value->AXIS_Y, bar->ACC_Value->AXIS_Z); |
quentin9696 | 7:dc76d89a8d51 | 65 | pc.printf("Gyroscope (mdps):\t X: %d, Y: %d, Z: %d\r\n", bar->GYR_Value->AXIS_X, bar->GYR_Value->AXIS_Y, bar->GYR_Value->AXIS_Z); |
quentin9696 | 7:dc76d89a8d51 | 66 | pc.printf("\r\n"); |
quentin9696 | 7:dc76d89a8d51 | 67 | |
quentin9696 | 7:dc76d89a8d51 | 68 | |
quentin9696 | 7:dc76d89a8d51 | 69 | } |
julientiron | 2:32226f1d12e5 | 70 | } |
quentin9696 | 7:dc76d89a8d51 | 71 | |
quentin9696 | 7:dc76d89a8d51 | 72 |