diff options
| author | Sven Eisenhauer <sven@sven-eisenhauer.net> | 2023-11-10 15:11:48 +0100 |
|---|---|---|
| committer | Sven Eisenhauer <sven@sven-eisenhauer.net> | 2023-11-10 15:11:48 +0100 |
| commit | 33613a85afc4b1481367fbe92a17ee59c240250b (patch) | |
| tree | 670b842326116b376b505ec2263878912fca97e2 /Master/Real-Time Systems/mki/src/mki.h | |
| download | Studium-33613a85afc4b1481367fbe92a17ee59c240250b.tar.gz Studium-33613a85afc4b1481367fbe92a17ee59c240250b.tar.bz2 | |
Diffstat (limited to 'Master/Real-Time Systems/mki/src/mki.h')
| -rw-r--r-- | Master/Real-Time Systems/mki/src/mki.h | 86 |
1 files changed, 86 insertions, 0 deletions
diff --git a/Master/Real-Time Systems/mki/src/mki.h b/Master/Real-Time Systems/mki/src/mki.h new file mode 100644 index 0000000..f2ef77b --- /dev/null +++ b/Master/Real-Time Systems/mki/src/mki.h @@ -0,0 +1,86 @@ +//============================================================================ +// Name: +// mki.h +// +// Summary: +// A pretty simple class for controlling the parts +// we can on the mercedes-combi-instrument +// +// Created on: +// Okt 1, 2010 +// +// Author: +// Christian Steiger +//============================================================================ + +// includes +#include "libcanio.h" + +// defines to make things easier, take a look at mkp.cpp +// to see what they are doing exactly. + +// lamps on the display (mki::setLamps()) +#define NONE 0x00 +#define MKI_ABS 0x01 +#define MKI_ESP 0x02 +#define MKI_HANDBRAKE 0x04 +#define MKI_ENGINE 0x08 +#define MKI_WARN 0x10 +#define MKI_WARN_BLINK 0x20 +#define MKI_FUEL_LOW 0x40 + +// lcd display options (mki::setDisplay()) +#define MKI_LIMIT 0x01 +#define MKI_LIMIT_TEXT 0x02 +#define MKI_PERMANENT 0x04 +#define MKI_EXCEED 0x08 +#define MKI_WINTER_TYRE 0x10 +#define MKI_MPH_BLINK 0x10 +#define MKI_NO_MPH 0x20 + +// warnings (mki::setAlert()) +#define MKI_OIL_LOW 0x01 +#define MKI_TIRE_PRESSURE 0x02 +#define MKI_TIRE_DEFECT 0x04 + + +// class definition +class mki +{ + public: + // constructor and destructor + mki(); + ~mki(); + + // various methods, see mki.cpp for descriptions + int connect( const char* const interface ); + void setLamps( const unsigned int lamps); + void setLampsOff(void); + void setRpm( const unsigned short rpm ); + void setMph( const unsigned char mph ); + void setCWTemp( const unsigned char temp ); + void setDisplayMph( const unsigned char mph ); + void setDisplay( const unsigned int flags ); + void setAlert( const unsigned int problem ); + + void sendData(void); + + void setKmh ( const unsigned char kmh ); + void setDisplayKmh ( const unsigned char kmh ); + + // dont rely to heavily on this, it should be removed asap. + CanIO* getInterface(void); + + protected: + // class members + CanIO m_can; + unsigned char m_alert; + + can_frame m_can_id_200; + can_frame m_can_id_208; + can_frame m_can_id_210; + can_frame m_can_id_308; + can_frame m_can_id_312; + can_frame m_can_id_550; + can_frame m_can_id_608; +}; |
