mpu con sd card
Dependencies: mbed MPU6050 SDFileSystem ds3231
main.cpp@2:6aec5de30f86, 2020-05-25 (annotated)
- Committer:
- SantiagoE
- Date:
- Mon May 25 23:07:31 2020 +0000
- Revision:
- 2:6aec5de30f86
- Parent:
- 0:bdbd3d6fc5d5
SDCARD_MPU6050
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
SantiagoE | 2:6aec5de30f86 | 1 | |
mbed_official | 0:bdbd3d6fc5d5 | 2 | #include "mbed.h" |
mbed_official | 0:bdbd3d6fc5d5 | 3 | #include "SDFileSystem.h" |
SantiagoE | 2:6aec5de30f86 | 4 | #include "MPU6050.h" |
SantiagoE | 2:6aec5de30f86 | 5 | #include <string> |
SantiagoE | 2:6aec5de30f86 | 6 | #include <stdio.h> |
SantiagoE | 2:6aec5de30f86 | 7 | #include <stdlib.h> |
SantiagoE | 2:6aec5de30f86 | 8 | #include <ds3231.h> |
SantiagoE | 2:6aec5de30f86 | 9 | Ds3231 rtc (D14,D15); |
SantiagoE | 2:6aec5de30f86 | 10 | //SDFileSystem sd(p5, p6, p7, p8, "sd"); // the pinout on the mbed Cool Components workshop board //mosi, miso, sclk |
SantiagoE | 2:6aec5de30f86 | 11 | MPU6050 Mpu (D7,D6); |
SantiagoE | 2:6aec5de30f86 | 12 | SDFileSystem sd(D11, D12, D13, D8, "sd"); |
SantiagoE | 2:6aec5de30f86 | 13 | Ticker timer; |
SantiagoE | 2:6aec5de30f86 | 14 | string Vector[100]={"","","","","","","","","","", |
SantiagoE | 2:6aec5de30f86 | 15 | "","","","","","","","","","", |
SantiagoE | 2:6aec5de30f86 | 16 | "","","","","","","","","","", |
SantiagoE | 2:6aec5de30f86 | 17 | "","","","","","","","","",""}; |
SantiagoE | 2:6aec5de30f86 | 18 | /*"","","","","","","","","",""}; |
SantiagoE | 2:6aec5de30f86 | 19 | "","","","","","","","","","", |
SantiagoE | 2:6aec5de30f86 | 20 | "","","","","","","","","","", |
SantiagoE | 2:6aec5de30f86 | 21 | "","","","","","","","","","", |
SantiagoE | 2:6aec5de30f86 | 22 | "","","","","","","","","","", |
SantiagoE | 2:6aec5de30f86 | 23 | "","","","","","","","","",""}; |
SantiagoE | 2:6aec5de30f86 | 24 | */ |
SantiagoE | 2:6aec5de30f86 | 25 | |
SantiagoE | 2:6aec5de30f86 | 26 | |
SantiagoE | 2:6aec5de30f86 | 27 | |
SantiagoE | 2:6aec5de30f86 | 28 | |
SantiagoE | 2:6aec5de30f86 | 29 | int j=0; |
SantiagoE | 2:6aec5de30f86 | 30 | //string d; |
SantiagoE | 2:6aec5de30f86 | 31 | |
SantiagoE | 2:6aec5de30f86 | 32 | int ax,ay,az; |
SantiagoE | 2:6aec5de30f86 | 33 | float gx,gy,gz,gt; |
SantiagoE | 2:6aec5de30f86 | 34 | |
SantiagoE | 2:6aec5de30f86 | 35 | char a; |
SantiagoE | 2:6aec5de30f86 | 36 | char buffer[50]; |
SantiagoE | 2:6aec5de30f86 | 37 | int n,g=0; |
SantiagoE | 2:6aec5de30f86 | 38 | Serial pc(USBTX, USBRX); |
SantiagoE | 2:6aec5de30f86 | 39 | int main() |
SantiagoE | 2:6aec5de30f86 | 40 | { |
SantiagoE | 2:6aec5de30f86 | 41 | ds3231_time_t time = {0,58,10,5,1}; //Los primeros 3 números corresponden a los segundos,minutos,horas //rtc |
SantiagoE | 2:6aec5de30f86 | 42 | uint16_t rtn_val; |
SantiagoE | 2:6aec5de30f86 | 43 | rtc.set_time(time); |
SantiagoE | 2:6aec5de30f86 | 44 | |
SantiagoE | 2:6aec5de30f86 | 45 | ds3231_calendar_t calendar = {28,9,25,8}; // Los primeros tres valores corresponden al día/mes/año //endrtc |
SantiagoE | 2:6aec5de30f86 | 46 | |
SantiagoE | 2:6aec5de30f86 | 47 | while(true) |
SantiagoE | 2:6aec5de30f86 | 48 | { |
SantiagoE | 2:6aec5de30f86 | 49 | gx= Mpu.getGyroRawX(); |
SantiagoE | 2:6aec5de30f86 | 50 | gx=gx/1000; |
SantiagoE | 2:6aec5de30f86 | 51 | gy= Mpu.getGyroRawY(); |
SantiagoE | 2:6aec5de30f86 | 52 | gy=gy/1000; |
SantiagoE | 2:6aec5de30f86 | 53 | gz= Mpu.getGyroRawZ(); |
SantiagoE | 2:6aec5de30f86 | 54 | gz=gz/1000; |
SantiagoE | 2:6aec5de30f86 | 55 | |
SantiagoE | 2:6aec5de30f86 | 56 | rtn_val = rtc.get_time(&time); //rtc |
SantiagoE | 2:6aec5de30f86 | 57 | pc.printf("%d/%d/%d - ", calendar); |
SantiagoE | 2:6aec5de30f86 | 58 | pc.printf("%d:%d:%d - ",time); //endrtc |
SantiagoE | 2:6aec5de30f86 | 59 | |
SantiagoE | 2:6aec5de30f86 | 60 | pc.printf("%d", gx); |
SantiagoE | 2:6aec5de30f86 | 61 | pc.printf(","); |
SantiagoE | 2:6aec5de30f86 | 62 | pc.printf("%d", gy); |
SantiagoE | 2:6aec5de30f86 | 63 | pc.printf(","); |
SantiagoE | 2:6aec5de30f86 | 64 | pc.printf("%d", gz); |
SantiagoE | 2:6aec5de30f86 | 65 | pc.printf("\n\r"); |
SantiagoE | 2:6aec5de30f86 | 66 | n=sprintf (buffer, "%f,%f,%f",gx,gy,gz); |
SantiagoE | 2:6aec5de30f86 | 67 | Vector[j]=buffer; |
SantiagoE | 2:6aec5de30f86 | 68 | j++; |
SantiagoE | 2:6aec5de30f86 | 69 | if(j==40){ |
SantiagoE | 2:6aec5de30f86 | 70 | j=0; |
SantiagoE | 2:6aec5de30f86 | 71 | break; |
SantiagoE | 2:6aec5de30f86 | 72 | } |
SantiagoE | 2:6aec5de30f86 | 73 | wait(0.5); |
SantiagoE | 2:6aec5de30f86 | 74 | } |
SantiagoE | 2:6aec5de30f86 | 75 | |
SantiagoE | 2:6aec5de30f86 | 76 | /*rtn_val = rtc.get_time(&time); //rtc |
SantiagoE | 2:6aec5de30f86 | 77 | pc.printf("%d/%d/%d - ", calendar); |
SantiagoE | 2:6aec5de30f86 | 78 | pc.printf("%d:%d:%d\n\r",time); //endrtc */ |
SantiagoE | 2:6aec5de30f86 | 79 | |
mbed_official | 0:bdbd3d6fc5d5 | 80 | printf("Hello World!\n"); |
mbed_official | 0:bdbd3d6fc5d5 | 81 | |
mbed_official | 0:bdbd3d6fc5d5 | 82 | mkdir("/sd/mydir", 0777); |
mbed_official | 0:bdbd3d6fc5d5 | 83 | |
mbed_official | 0:bdbd3d6fc5d5 | 84 | FILE *fp = fopen("/sd/mydir/sdtest.txt", "w"); |
SantiagoE | 2:6aec5de30f86 | 85 | if(fp == NULL) |
SantiagoE | 2:6aec5de30f86 | 86 | { |
mbed_official | 0:bdbd3d6fc5d5 | 87 | error("Could not open file for write\n"); |
mbed_official | 0:bdbd3d6fc5d5 | 88 | } |
SantiagoE | 2:6aec5de30f86 | 89 | //le voy a mandar un audio explicandole que toca hacer paara que me entienda y ki hagamos entre los 2 hacele |
SantiagoE | 2:6aec5de30f86 | 90 | |
SantiagoE | 2:6aec5de30f86 | 91 | for (int i=0;i<40;i++) |
SantiagoE | 2:6aec5de30f86 | 92 | { |
SantiagoE | 2:6aec5de30f86 | 93 | fprintf(fp,"%s\n\r",Vector[i]); |
SantiagoE | 2:6aec5de30f86 | 94 | fprintf(fp,"\n\r"); |
SantiagoE | 2:6aec5de30f86 | 95 | } |
SantiagoE | 2:6aec5de30f86 | 96 | //fprintf(fp, "Quiero pasar en este trabajo :c"); |
mbed_official | 0:bdbd3d6fc5d5 | 97 | fclose(fp); |
mbed_official | 0:bdbd3d6fc5d5 | 98 | printf("Goodbye World!\n"); |
SantiagoE | 2:6aec5de30f86 | 99 | |
SantiagoE | 2:6aec5de30f86 | 100 | } |