Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: MPU9250_SPI
Fork of WearableDevice_Nucleo by
main.cpp
- Committer:
- gusteibolt
- Date:
- 2017-10-12
- Revision:
- 8:ba93a973f967
- Parent:
- 7:ebaaff27840b
- Child:
- 10:577e1fc4453e
File content as of revision 8:ba93a973f967:
/* * Los Putacos * Copyright (C) 2017, All rights reserved. * ________________________________________ * * Created by: Gustavo Campana, Michael Schmidt, Miguel Lopez * Date: 11-Oct-2017 * Version: V0.1 */ //----------------------------------------------------------------- // Board: NUCLEO - F401RE // Version: MR1136 rev C //----------------------------------------------------------------- //----------------------------------------------------------------- // Includes #include "mbed.h" #include "rtos.h" #include "mbed_events.h" #include "configuration.h" //#include "event.h" #include "pin.h" #include "MPU9250.h" //----------------------------------------------------------------- //----------------------------------------------------------------- // Declarations Timer t; //Timer µS time-stamp EventQueue queue(32 * EVENTS_EVENT_SIZE); //Event Serial pc(USBTX, USBRX); // PC Serial (Debug) MPU9250 mpu9250; // IMU MPU-9255 by Kris Winer //----------------------------------------------------------------- //----------------------------------------------------------------- // Global Variables // Your code here! //----------------------------------------------------------------- //----------------------------------------------------------------- void print_event(void const *argv, int i) { pc.printf("%d",i); pc.printf((const char*)argv); } //----------------------------------------------------------------- //----------------------------------------------------------------- void blink_event(DigitalOut pin){ if(pin.read()==0){ pin = 1; } else{ pin = 0; } } //----------------------------------------------------------------- //----------------------------------------------------------------- void println_event(){ pc.printf("Arroz, feijao e batata\r\n"); } //----------------------------------------------------------------- //----------------------------------------------------------------- void setup(){ // PC Serial (Debug) baudrate pc.baud(9600); pc.printf("CPU SystemCoreClock is %d Hz\r\n", SystemCoreClock); // Task queue int task1_id = queue.call_every(1000, printf, "called every 1 seconds\n"); int task2_id = queue.call_every(2500, printf, "called every 2.5 seconds\n"); int task3_id = queue.call_every(3000, print_event, (void *)"called every 3 seconds\n", t.read()); int task4_id = queue.call_every(50, blink_event, led1); int task5_id = queue.call_every(500, println_event); } //----------------------------------------------------------------- //----------------------------------------------------------------- void initMPU9250() { // Initialize MPU9250 device // wake up device //writeByte(MPU9250_ADDRESS, PWR_MGMT_1, 0x00); // Clear sleep mode bit (6), enable all sensors } //----------------------------------------------------------------- //----------------------------------------------------------------- int main() { setup(); // Initial setups //Reading the analog input (Microphone) array = micro.read_u16(); t.start(); // Start timer while (true) { queue.dispatch(); } } //-----------------------------------------------------------------