![](/media/cache/img/default_profile.jpg.50x50_q85.jpg)
See graph
Dependencies: MCP23017 SDFileSystem WattBob_TextLCD mbed
Fork of Embedded_Software_Assignment_2 by
Tasks.h
- Committer:
- sk398
- Date:
- 2016-02-26
- Revision:
- 5:250f51c80ac1
- Parent:
- 4:b85bc0d810e1
- Child:
- 6:ceda53939eb8
File content as of revision 5:250f51c80ac1:
/* ##################################################################### Tasks.h ------- Embedded Software - Assignment 2 -------------------------------- Written by: Steven Kay Date: February 2016 Function: This Version: 1.0 Version History --------------- 1.1 rgdfgdfgdfggdfgdg 1.0 gdgddfdddgd ##################################################################### */ #ifndef _TASKS_H_ #define _TASKS_H_ #include "MCP23017.h" #include "WattBob_TextLCD.h" // Global definitions #define HIGH 1 #define LOW 0 #define TRUE 1 #define FALSE 0 // Task 1 definitions #define WATCHDOG_PULSE_WIDTH 15 // Task 2 definitions // Task 3 definitions // Task 4 definitions #define NUM_ANALOG_SAMPLES 4.0 // Task 5 definitions // Task 6 definitions /* ####################### Class definitions and prototypes ####################### */ /* ==================================== Task 1 ==================================== */ // Measure freuqnecy class Task1 { public: Task1(PinName squareWaveInPin); int ReadFrequency(); private: Timer _Task1Timer; void MeasureFrequency(); void StopCounter(); volatile int measuredFrequency; InterruptIn *_squareWaveIn; }; /* ==================================== Task 2 ==================================== */ // Digital Input class Task2 { public: Task2(PinName digitalInCheckPin); bool digitalInState(); private: DigitalIn *_digitalInCheck; }; /* ==================================== Task 3 ==================================== */ // Output watchdog pulse class Task3 { public: Task3(PinName WatchdogPin); void OutputWatchdogPulse(); private: DigitalOut *_Watchdog; }; /* ==================================== Task 4 ==================================== */ // Read 2 analog inputs class Task4 { public: Task4(PinName Analog1Pin,PinName Analog2Pin); float *returnAnalogReadings(); private: AnalogIn *_AnalogIn1; AnalogIn *_AnalogIn2; }; //* ==================================== Task 5 ==================================== */ // Display outputs to LCD class Task5 { public: Task5(PinName sda, PinName scl, int address); void updateDisplay(int task1Param,int task2Param, float task4Channel1, float task4Channel2); private: protected: MCP23017 *_par_port; WattBob_TextLCD *_lcd; }; // ///* ==================================== Task 6 ==================================== */ //// Logical checks //class Task6 //{ //public: // Task5(); // //private: // // //}; // ///* ==================================== Task 7 ==================================== */ //// Save data to SD Card //class Task7 //{ //public: // Task7(); // //private: // // //}; #endif