Sensor Data - first assignment CO838

Dependencies:   mbed C12832 FXOS8700Q LM75B eCompass_FPU_Lib

Sensor Data - Project developed by Jean-Paul Saysana (jls44)

First assignment for the Internet of Things and Mobile Devices CO838 module

University of Kent (2016-2017)

Functionalities:

- Temperature Sensor

- Compass

- Music box

- Potentiometer that changes LED colours

Libraries used: C12832, eCompass_FPU_Lib, FXOS8700Q, LM75B

include/SensorData.h

Committer:
co838_jls44
Date:
2017-02-24
Revision:
1:c54902f21aa8
Parent:
0:4b83b332b327

File content as of revision 1:c54902f21aa8:

/* Developed by Jean-Paul Saysana - jls44 - MSc Student in Computer Security*/
/* Internet of Things and Mobile Devices - CO838 University of Kent*/
/* Class SensorData which is the main class of this project*/

#ifndef SENSORDATA_H_
#define SENSORDATA_H_

#include "mbed.h"

#include "LCD.h"
#include "TemperatureSensor.h"
#include "Speaker.h"
#include "Compass.h"
#include "LED.h"

class SensorData {
public:
    SensorData();
    ~SensorData() {};
    
    void Start();

    enum ePage { TEMPERATURE = 0, COMPASS = 1, MUSIC = 2, ENTER_TEMP = 3, 
                                                          ENTER_COMPASS = 4 };
    
    
private:
    void MainLoop();
    void MenuSelection();

    void InitCommand();
    void ChangePosition();
    void Up();
    void Down();
    void Enter();
    void Pause();
    void Back();
    
    void SwitchPause();

    /* LCD object */
    LCD lcd;

    /* Temperature sensor object */
    TemperatureSensor ts;
    /* Print temperature in the LCD screen */
    void DisplayTemperature();
    /* Delay to get data */
    float delay;
    

    /*  Speaker */
    Speaker speaker;

    /*  Compass */
    Compass compass;
    void DisplayCompass();

    /*  LED      */
    LED led;
    void ChangeLED();

    /*  Menu    */
    int pos;
    ePage epage;
    
    /* quit variable, if quit == 3, quit the program. */
    int quit;
    
    /* Pause variable */
    bool pause_sensor;
};

#endif /* SENSORDATA_H_ */