Maxim DS1683 Total-Elapsed -Time and Event Recorder with Alarm
DS1683.h@2:f262ba460525, 2017-04-12 (annotated)
- Committer:
- Rhyme
- Date:
- Wed Apr 12 07:22:55 2017 +0000
- Revision:
- 2:f262ba460525
- Parent:
- 1:8fa5400054bd
additional stops in write removed
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Rhyme | 0:7c0469e71fa2 | 1 | #ifndef _DS1683_H_ |
Rhyme | 0:7c0469e71fa2 | 2 | #define _DS1683_H_ |
Rhyme | 0:7c0469e71fa2 | 3 | |
Rhyme | 0:7c0469e71fa2 | 4 | /** |
Rhyme | 0:7c0469e71fa2 | 5 | * Maxim DS1683 Total-Elasped-Time and Event Recorder with Alarm |
Rhyme | 0:7c0469e71fa2 | 6 | * |
Rhyme | 0:7c0469e71fa2 | 7 | * @code |
Rhyme | 0:7c0469e71fa2 | 8 | * // write sample code here // |
Rhyme | 0:7c0469e71fa2 | 9 | * @endcode |
Rhyme | 0:7c0469e71fa2 | 10 | */ |
Rhyme | 0:7c0469e71fa2 | 11 | |
Rhyme | 0:7c0469e71fa2 | 12 | class DS1683 |
Rhyme | 0:7c0469e71fa2 | 13 | { |
Rhyme | 0:7c0469e71fa2 | 14 | public: |
Rhyme | 0:7c0469e71fa2 | 15 | /** |
Rhyme | 0:7c0469e71fa2 | 16 | * DS1683 constructor |
Rhyme | 0:7c0469e71fa2 | 17 | * |
Rhyme | 0:7c0469e71fa2 | 18 | * @param sda SDA pin |
Rhyme | 0:7c0469e71fa2 | 19 | * @param sdl SCL pin |
Rhyme | 0:7c0469e71fa2 | 20 | * @param event EVENT pin (input) |
Rhyme | 0:7c0469e71fa2 | 21 | * @param alarm ALARM pin (output) |
Rhyme | 0:7c0469e71fa2 | 22 | * @param addr addr of the I2C peripheral |
Rhyme | 0:7c0469e71fa2 | 23 | */ |
Rhyme | 0:7c0469e71fa2 | 24 | DS1683(PinName sda, PinName scl, PinName event, PinName alarm, int addr); |
Rhyme | 0:7c0469e71fa2 | 25 | |
Rhyme | 0:7c0469e71fa2 | 26 | /** |
Rhyme | 0:7c0469e71fa2 | 27 | * DS1683 destructor |
Rhyme | 0:7c0469e71fa2 | 28 | */ |
Rhyme | 0:7c0469e71fa2 | 29 | ~DS1683() ; |
Rhyme | 0:7c0469e71fa2 | 30 | |
Rhyme | 1:8fa5400054bd | 31 | /** |
Rhyme | 1:8fa5400054bd | 32 | * enter password |
Rhyme | 1:8fa5400054bd | 33 | * |
Rhyme | 1:8fa5400054bd | 34 | * @param pass unsigned long password value, initial value is 0xFFFFFFFF |
Rhyme | 1:8fa5400054bd | 35 | */ |
Rhyme | 0:7c0469e71fa2 | 36 | void enterPW(uint32_t pass) ; |
Rhyme | 0:7c0469e71fa2 | 37 | void setCommand(uint8_t cmd) ; |
Rhyme | 0:7c0469e71fa2 | 38 | uint8_t getCommand(void) ; |
Rhyme | 0:7c0469e71fa2 | 39 | void setConfig(uint8_t conf) ; |
Rhyme | 0:7c0469e71fa2 | 40 | uint8_t getConfig(void) ; |
Rhyme | 0:7c0469e71fa2 | 41 | uint8_t getStatus(void) ; |
Rhyme | 0:7c0469e71fa2 | 42 | |
Rhyme | 0:7c0469e71fa2 | 43 | void clearAlarm(void) ; |
Rhyme | 0:7c0469e71fa2 | 44 | |
Rhyme | 0:7c0469e71fa2 | 45 | void setETCAlarm(uint32_t count) ; |
Rhyme | 0:7c0469e71fa2 | 46 | uint32_t getETCAlarm(void) ; |
Rhyme | 0:7c0469e71fa2 | 47 | void setETC(uint32_t count) ; |
Rhyme | 0:7c0469e71fa2 | 48 | uint32_t getETC(void) ; |
Rhyme | 0:7c0469e71fa2 | 49 | void clearETC(void) ; |
Rhyme | 0:7c0469e71fa2 | 50 | |
Rhyme | 0:7c0469e71fa2 | 51 | void setEventAlarm(uint16_t count) ; |
Rhyme | 0:7c0469e71fa2 | 52 | uint16_t getEventAlarm(void) ; |
Rhyme | 0:7c0469e71fa2 | 53 | void setEventCount(uint16_t count) ; |
Rhyme | 0:7c0469e71fa2 | 54 | uint16_t getEventCount(void) ; |
Rhyme | 0:7c0469e71fa2 | 55 | void clearEvent(void) ; |
Rhyme | 0:7c0469e71fa2 | 56 | |
Rhyme | 0:7c0469e71fa2 | 57 | void enableETCAlarm(void) ; |
Rhyme | 0:7c0469e71fa2 | 58 | void disableETCAlarm(void) ; |
Rhyme | 0:7c0469e71fa2 | 59 | void enableEventAlarm(void) ; |
Rhyme | 0:7c0469e71fa2 | 60 | void disableEventAlarm(void) ; |
Rhyme | 0:7c0469e71fa2 | 61 | void alarmPol(int pol) ; |
Rhyme | 1:8fa5400054bd | 62 | void clearRegs(void) ; |
Rhyme | 0:7c0469e71fa2 | 63 | void dumpRegs(void) ; |
Rhyme | 0:7c0469e71fa2 | 64 | void dumpETC(void) ; |
Rhyme | 0:7c0469e71fa2 | 65 | void dumpEvent(void) ; |
Rhyme | 0:7c0469e71fa2 | 66 | |
Rhyme | 0:7c0469e71fa2 | 67 | int write(int addr, uint8_t *data, int len) ; |
Rhyme | 0:7c0469e71fa2 | 68 | int read(int addr, uint8_t *data, int len) ; |
Rhyme | 0:7c0469e71fa2 | 69 | uint8_t readReg8(int addr) ; |
Rhyme | 0:7c0469e71fa2 | 70 | void writeReg8(int addr, uint8_t value) ; |
Rhyme | 0:7c0469e71fa2 | 71 | uint16_t readReg16(int addr) ; |
Rhyme | 0:7c0469e71fa2 | 72 | void writeReg16(int addr, uint16_t value) ; |
Rhyme | 0:7c0469e71fa2 | 73 | uint32_t readReg32(int addr) ; |
Rhyme | 0:7c0469e71fa2 | 74 | void writeReg32(int addr, uint32_t value) ; |
Rhyme | 0:7c0469e71fa2 | 75 | |
Rhyme | 0:7c0469e71fa2 | 76 | DigitalOut event ; |
Rhyme | 0:7c0469e71fa2 | 77 | InterruptIn alarm ; |
Rhyme | 0:7c0469e71fa2 | 78 | |
Rhyme | 0:7c0469e71fa2 | 79 | private: |
Rhyme | 0:7c0469e71fa2 | 80 | I2C m_i2c ; |
Rhyme | 0:7c0469e71fa2 | 81 | int m_addr ; |
Rhyme | 0:7c0469e71fa2 | 82 | |
Rhyme | 0:7c0469e71fa2 | 83 | |
Rhyme | 0:7c0469e71fa2 | 84 | int readRegs(int addr, uint8_t * data, int len) ; |
Rhyme | 0:7c0469e71fa2 | 85 | int writeRegs(uint8_t * data, int len) ; |
Rhyme | 0:7c0469e71fa2 | 86 | |
Rhyme | 0:7c0469e71fa2 | 87 | } ; |
Rhyme | 0:7c0469e71fa2 | 88 | #endif /* _DS1683_H_ */ |