baseline build

Dependencies:   FastPWM mbed-os mbed

Committer:
jrhodes5150
Date:
Mon Jun 19 16:04:47 2017 +0000
Revision:
1:909f2393bc01
Parent:
0:8a420ac6394e
added fastPWM

Who changed what in which revision?

UserRevisionLine numberNew contents of line
jrhodes5150 0:8a420ac6394e 1
jrhodes5150 0:8a420ac6394e 2 #ifndef __POWER_CONTROLLER_H__
jrhodes5150 0:8a420ac6394e 3 #define __POWER_CONTROLLER_H__
jrhodes5150 0:8a420ac6394e 4
jrhodes5150 0:8a420ac6394e 5 #include "Thread.h"
jrhodes5150 0:8a420ac6394e 6 #include "RtosTimer.h"
jrhodes5150 0:8a420ac6394e 7 #include "IOControl.h"
jrhodes5150 0:8a420ac6394e 8 #include "ADCInput.h"
jrhodes5150 0:8a420ac6394e 9
jrhodes5150 0:8a420ac6394e 10 #include "DeviceProperties.h"
jrhodes5150 0:8a420ac6394e 11 #include "PID.h"
jrhodes5150 0:8a420ac6394e 12
jrhodes5150 0:8a420ac6394e 13 class PowerController
jrhodes5150 0:8a420ac6394e 14 {
jrhodes5150 0:8a420ac6394e 15 public:
jrhodes5150 0:8a420ac6394e 16 PowerController(void);
jrhodes5150 0:8a420ac6394e 17
jrhodes5150 0:8a420ac6394e 18 void ThreadEntry(void);
jrhodes5150 0:8a420ac6394e 19
jrhodes5150 0:8a420ac6394e 20 void AcquireData(void);
jrhodes5150 0:8a420ac6394e 21 void ExecuteConstantPower(void);
jrhodes5150 0:8a420ac6394e 22 void ExecuteConstantVoltage(void);
jrhodes5150 0:8a420ac6394e 23 void ExecuteRamp(void);
jrhodes5150 0:8a420ac6394e 24 void ProcessPID(void);
jrhodes5150 0:8a420ac6394e 25 void Calibrate(void);
jrhodes5150 0:8a420ac6394e 26 double OffsetAndGain(double, double, double, double, double);
jrhodes5150 0:8a420ac6394e 27 private:
jrhodes5150 0:8a420ac6394e 28 DigitalOut led3;
jrhodes5150 0:8a420ac6394e 29 DigitalOut led4;
jrhodes5150 0:8a420ac6394e 30 IOControl ioControl;
jrhodes5150 0:8a420ac6394e 31 ADCInput ADC;
jrhodes5150 0:8a420ac6394e 32 PID pid;
jrhodes5150 0:8a420ac6394e 33 int myTime;
jrhodes5150 0:8a420ac6394e 34 int loopTimer;
jrhodes5150 0:8a420ac6394e 35 int calState;
jrhodes5150 0:8a420ac6394e 36 rtos::Thread thread;
jrhodes5150 0:8a420ac6394e 37 rtos::RtosTimer acquisitionTimer;
jrhodes5150 0:8a420ac6394e 38 rtos::RtosTimer pidTimer;
jrhodes5150 0:8a420ac6394e 39 };
jrhodes5150 0:8a420ac6394e 40
jrhodes5150 0:8a420ac6394e 41
jrhodes5150 0:8a420ac6394e 42 #endif