testprogram20190502

Dependencies:   mbed LSM6DS3 SDFileSystem

Committer:
mbed_crane_elec
Date:
Thu Aug 09 00:44:04 2018 +0000
Revision:
0:d6f289df4a08
Child:
1:38b61cb4f021
1st release.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mbed_crane_elec 0:d6f289df4a08 1 #include "mbed.h"
mbed_crane_elec 0:d6f289df4a08 2 #include "SDFileSystem.h"
mbed_crane_elec 0:d6f289df4a08 3 #include "LSM6DS3.h"
mbed_crane_elec 0:d6f289df4a08 4
mbed_crane_elec 0:d6f289df4a08 5 //-------------------------------------------------------------------------------
mbed_crane_elec 0:d6f289df4a08 6 //Port Settings
mbed_crane_elec 0:d6f289df4a08 7 DigitalOut led1(LED1);
mbed_crane_elec 0:d6f289df4a08 8 DigitalOut led2(P1_13,0);
mbed_crane_elec 0:d6f289df4a08 9 //DigitalOut USB_CONNECT(P0_6,0);
mbed_crane_elec 0:d6f289df4a08 10 DigitalIn sw(P1_20);
mbed_crane_elec 0:d6f289df4a08 11 DigitalIn isp(P0_1);
mbed_crane_elec 0:d6f289df4a08 12 DigitalOut sd_en(P1_16, 1);//SD card power on/off control port. and ON default.
mbed_crane_elec 0:d6f289df4a08 13 //DigitalIn sd_dat3(P0_17); // 0x10
mbed_crane_elec 0:d6f289df4a08 14 //DigitalIn sd_dat2(P1_22); // 0x08
mbed_crane_elec 0:d6f289df4a08 15 //DigitalIn sd_dat1(P1_14); // 0x04
mbed_crane_elec 0:d6f289df4a08 16 //DigitalIn sd_dat0(P0_22); // 0x02
mbed_crane_elec 0:d6f289df4a08 17 //DigitalIn sd_cmd(P0_21); // 0x01
mbed_crane_elec 0:d6f289df4a08 18
mbed_crane_elec 0:d6f289df4a08 19 //-------------------------------------------------------------------------------
mbed_crane_elec 0:d6f289df4a08 20 //
mbed_crane_elec 0:d6f289df4a08 21 SDFileSystem fs(P0_21, P0_22, P1_15, P0_17, "sd"); // mosi(CMD), miso(DAT0), sclk(CLK), cs(DAT3)
mbed_crane_elec 0:d6f289df4a08 22 LSM6DS3 lsm(P0_5, P0_4, LSM6DS3_AG_I2C_ADDR(0) );//I2C ADDR 0x6A
mbed_crane_elec 0:d6f289df4a08 23
mbed_crane_elec 0:d6f289df4a08 24
mbed_crane_elec 0:d6f289df4a08 25 //-------------------------------------------------------------------------------
mbed_crane_elec 0:d6f289df4a08 26 //
mbed_crane_elec 0:d6f289df4a08 27 int main()
mbed_crane_elec 0:d6f289df4a08 28 {
mbed_crane_elec 0:d6f289df4a08 29 while(1)
mbed_crane_elec 0:d6f289df4a08 30 {
mbed_crane_elec 0:d6f289df4a08 31 led1 = 1;
mbed_crane_elec 0:d6f289df4a08 32 wait(0.2);
mbed_crane_elec 0:d6f289df4a08 33 led1 = 0;
mbed_crane_elec 0:d6f289df4a08 34 wait(0.2);
mbed_crane_elec 0:d6f289df4a08 35
mbed_crane_elec 0:d6f289df4a08 36 if(sw == 0)
mbed_crane_elec 0:d6f289df4a08 37 {
mbed_crane_elec 0:d6f289df4a08 38 led2 = 0;
mbed_crane_elec 0:d6f289df4a08 39 }
mbed_crane_elec 0:d6f289df4a08 40 else
mbed_crane_elec 0:d6f289df4a08 41 {
mbed_crane_elec 0:d6f289df4a08 42 led2 = 1;
mbed_crane_elec 0:d6f289df4a08 43 }
mbed_crane_elec 0:d6f289df4a08 44
mbed_crane_elec 0:d6f289df4a08 45 if(isp == 0)
mbed_crane_elec 0:d6f289df4a08 46 {
mbed_crane_elec 0:d6f289df4a08 47 FILE *fp = fopen("/sd/TEST.txt", "w");
mbed_crane_elec 0:d6f289df4a08 48 if(fp != NULL)
mbed_crane_elec 0:d6f289df4a08 49 {
mbed_crane_elec 0:d6f289df4a08 50 lsm.begin();
mbed_crane_elec 0:d6f289df4a08 51 for(int i = 0;i < 5;i++)
mbed_crane_elec 0:d6f289df4a08 52 {
mbed_crane_elec 0:d6f289df4a08 53 led2 = 0;
mbed_crane_elec 0:d6f289df4a08 54 wait(0.1);
mbed_crane_elec 0:d6f289df4a08 55 lsm.readGyro();
mbed_crane_elec 0:d6f289df4a08 56 fprintf(fp,"gx:%f gy:%f gz:%f\r\n",lsm.gx ,lsm.gy ,lsm.gz);
mbed_crane_elec 0:d6f289df4a08 57 lsm.readAccel();
mbed_crane_elec 0:d6f289df4a08 58 fprintf(fp,"ax:%f ay:%f az:%f\r\n",lsm.ax ,lsm.ay ,lsm.az);
mbed_crane_elec 0:d6f289df4a08 59 lsm.readTemp();
mbed_crane_elec 0:d6f289df4a08 60 fprintf(fp,"temp:%f\r\n",lsm.temperature_c );
mbed_crane_elec 0:d6f289df4a08 61 led2 = 1;
mbed_crane_elec 0:d6f289df4a08 62 wait(0.3);
mbed_crane_elec 0:d6f289df4a08 63 }
mbed_crane_elec 0:d6f289df4a08 64 fprintf(fp,"\r\n");
mbed_crane_elec 0:d6f289df4a08 65 fclose(fp);
mbed_crane_elec 0:d6f289df4a08 66 free(fp);
mbed_crane_elec 0:d6f289df4a08 67 }
mbed_crane_elec 0:d6f289df4a08 68 }
mbed_crane_elec 0:d6f289df4a08 69 }
mbed_crane_elec 0:d6f289df4a08 70 }