123

Dependencies:   mbed

Fork of LG by igor Apu

DeviceI2C.h

Committer:
Diletant
Date:
2016-07-31
Revision:
183:c7a9c309086c
Parent:
167:bedc0a9d559a

File content as of revision 183:c7a9c309086c:

#ifndef __DEVICE_I2C_H__
#define __DEVICE_I2C_H__

typedef struct _DeviceI2CSettings {
  uint32_t trigger;
} DeviceI2CSettings;

#define I2C_BUFFER_LENGTH 6
typedef struct _DeviceI2CState {
  uint32_t CON0;                      //Control register
  uint32_t buffer[I2C_BUFFER_LENGTH]; //Transmission buffer
  uint32_t position;                  //Buffer position
  uint32_t counter;                   //Time out counter
  uint32_t trigger;                   //Time out trigger
  uint32_t enabled;                   //Transmission enabled
} DeviceI2CState;

typedef struct _DeviceI2C {
  DeviceI2CState state;
  DeviceI2CSettings settings;
} DeviceI2C;

void InitI2CDefaultSettings(void);
void InitI2CState(void);
void DeviceStartI2C(void);

void i2cEnableTransmission(void);
void i2cProcess(void);
#endif  /* __DEVICE_I2C_H__ */