chad

Dependencies:   MCP23017 WattBob_TextLCD mbed-rtos mbed

Committer:
f_legge
Date:
Mon Mar 13 14:51:55 2017 +0000
Revision:
17:bc25d5f47bab
Parent:
16:bebcc7d24f3e
Final Commit. ; All tasks working.; Timing added.; Commented and formatted.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
f_legge 13:ad04937ca366 1 #include "mbed.h"
f_legge 13:ad04937ca366 2 #include "MCP23017.h"
f_legge 13:ad04937ca366 3 #include "WattBob_TextLCD.h"
f_legge 13:ad04937ca366 4 #include "SDFileSystem.h"
f_legge 14:ede0e7ed2745 5 //#include "rtos.h"
f_legge 13:ad04937ca366 6
f_legge 13:ad04937ca366 7 #define BACK_LIGHT_ON(INTERFACE) INTERFACE->write_bit(1,BL_BIT)
f_legge 13:ad04937ca366 8 #define BACK_LIGHT_OFF(INTERFACE) INTERFACE->write_bit(0,BL_BIT)
f_legge 13:ad04937ca366 9
f_legge 13:ad04937ca366 10 extern MCP23017 *par_port; // pointer to 16-bit parallel I/O chip
f_legge 13:ad04937ca366 11 extern WattBob_TextLCD *lcd; // pointer to 2*16 character LCD object
f_legge 13:ad04937ca366 12 extern FILE *fp; // pointer to uSD object
f_legge 13:ad04937ca366 13
f_legge 17:bc25d5f47bab 14 extern DigitalIn Fq;
f_legge 17:bc25d5f47bab 15 extern DigitalIn DS; // Digital switch input
f_legge 17:bc25d5f47bab 16 extern DigitalIn DS_s; // Digital shutdown switch
f_legge 17:bc25d5f47bab 17 extern DigitalOut WD_pulse; // Watchdog Pulse
f_legge 16:bebcc7d24f3e 18
f_legge 17:bc25d5f47bab 19
f_legge 17:bc25d5f47bab 20 extern AnalogIn A1_; // Analogue input to be filtered
f_legge 17:bc25d5f47bab 21 extern AnalogIn A2_; // Analogue input to be filtered
f_legge 17:bc25d5f47bab 22
f_legge 16:bebcc7d24f3e 23 extern Ticker ticker;
f_legge 15:85616bc0e2ae 24 extern Timer timer; // Frequency Timer
f_legge 15:85616bc0e2ae 25 extern Timer T5;
f_legge 14:ede0e7ed2745 26
f_legge 14:ede0e7ed2745 27 void CycExec(void);
f_legge 13:ad04937ca366 28
f_legge 13:ad04937ca366 29 void Task1(void);
f_legge 13:ad04937ca366 30 void Task2(void);
f_legge 13:ad04937ca366 31 void Task3(void);
f_legge 13:ad04937ca366 32 void Task4(void);
f_legge 17:bc25d5f47bab 33 void Task5a(void);
f_legge 17:bc25d5f47bab 34 void Task5b(void);
f_legge 13:ad04937ca366 35 void Task6(void);
f_legge 13:ad04937ca366 36 void Task7(void);
f_legge 14:ede0e7ed2745 37
f_legge 17:bc25d5f47bab 38 void Task8(void);
f_legge 13:ad04937ca366 39
f_legge 13:ad04937ca366 40
f_legge 13:ad04937ca366 41 // Global Variables
f_legge 13:ad04937ca366 42 // Constant Declaration
f_legge 14:ede0e7ed2745 43 extern const int SampFreq; // Sampling Frequency
f_legge 14:ede0e7ed2745 44 extern const int WD; // Watchdog pulse length
f_legge 13:ad04937ca366 45
f_legge 13:ad04937ca366 46 // Variable Declaration
f_legge 17:bc25d5f47bab 47 extern float freq;
f_legge 13:ad04937ca366 48
f_legge 13:ad04937ca366 49 extern int switch_state;
f_legge 13:ad04937ca366 50
f_legge 17:bc25d5f47bab 51 extern float A1_In;
f_legge 17:bc25d5f47bab 52 extern float A2_In;
f_legge 15:85616bc0e2ae 53 extern float A1_val; // Analogue 1 return variable (Analogue In)
f_legge 15:85616bc0e2ae 54 extern float A2_val; // Analogue 2 return variable (Analogue In)
f_legge 13:ad04937ca366 55
f_legge 17:bc25d5f47bab 56 extern int T5_chk;
f_legge 17:bc25d5f47bab 57
f_legge 14:ede0e7ed2745 58 extern int error_code; // Error code variable
f_legge 13:ad04937ca366 59
f_legge 14:ede0e7ed2745 60 extern int logcount; // Keep track of log number