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: mbed MODSERIAL FATFileSystem
System/StaticDefs.cpp
- Committer:
- tnhnrl
- Date:
- 2017-12-20
- Revision:
- 34:9b66c5188051
- Parent:
- 32:f2f8ae34aadc
- Child:
- 39:58375ca6b6ff
File content as of revision 34:9b66c5188051:
#include "StaticDefs.hpp"
//Declare static global variables using 'construct on use' idiom to ensure they
// are always constructed correctly and avoid "static initialization order fiasco".
Timer & systemTime() {
static Timer s;
return s;
}
Ticker & pulse() {
static Ticker pulse;
return pulse;
}
MODSERIAL & pc() {
//static MODSERIAL pc(USBTX, USBRX);
static MODSERIAL pc(p9, p10); //XBee tx, rx pins
return pc;
}
//MODSERIAL & xb() {
// static MODSERIAL xb(p9, p10); //XBee tx, rx pins
// return xb;
//}
MODSERIAL & datalogger() {
static MODSERIAL datalogger(p28, p27); //Data Logger tx, rx pins
return datalogger;
}
LocalFileSystem & local() {
static LocalFileSystem local("local");
return local;
}
SpiADC & adc() {
static SpiADC adc(p5,p6,p7,p8,LED2);
return adc;
}
LinearActuator & bce() {
static LinearActuator bce(0.01, p25, p29, p30, p18, 0); //interval , pwm, dir, reset, limit switch, adc channel
return bce;
}
LinearActuator & batt() {
static LinearActuator batt(0.01, p23, p21, p22, p17, 1); //interval , pwm, dir, reset, limit switchm, adc channel
return batt;
}
omegaPX209 & depth() {
static omegaPX209 depth(p19); // pin
return depth;
}
IMU & imu() {
static IMU imu(p13,p14); // tx, rx pin
return imu;
}
OuterLoop & depthLoop() {
static OuterLoop depthLoop(0.1, 0); // interval, sensor type
return depthLoop;
}
OuterLoop & pitchLoop() {
static OuterLoop pitchLoop(0.1, 1); // interval, sensor type
return pitchLoop;
}
StateMachine & stateMachine() {
static StateMachine stateMachine;
return stateMachine;
}
ConfigFileIO & configFileIO() {
static ConfigFileIO configFileIO;
return configFileIO;
}
SequenceController & sequenceController() {
static SequenceController sequenceController;
return sequenceController;
}
MbedLogger & mbedLogger() {
static MbedLogger mbedLogger;
return mbedLogger;
}
OpenLog & openLog() {
static OpenLog openLog;
return openLog;
}
DigitalOut & led1() {
static DigitalOut led1(LED1);
return led1;
}
DigitalOut & led2() {
static DigitalOut led2(LED2);
return led2;
}
DigitalOut & led3() {
static DigitalOut led3(LED3);
return led3;
}
DigitalOut & led4() {
static DigitalOut led4(LED4);
return led4;
}