123
Fork of LG by
DeviceI2C.h@183:c7a9c309086c, 2016-07-31 (annotated)
- Committer:
- Diletant
- Date:
- Sun Jul 31 06:19:02 2016 +0000
- Revision:
- 183:c7a9c309086c
- Parent:
- 167:bedc0a9d559a
Device&... update. More AskGld&Techno functionality.NotFinal!!!
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Diletant | 156:e68ee0bcdcda | 1 | #ifndef __DEVICE_I2C_H__ |
Diletant | 156:e68ee0bcdcda | 2 | #define __DEVICE_I2C_H__ |
Diletant | 156:e68ee0bcdcda | 3 | |
Diletant | 156:e68ee0bcdcda | 4 | typedef struct _DeviceI2CSettings { |
Diletant | 156:e68ee0bcdcda | 5 | uint32_t trigger; |
Diletant | 156:e68ee0bcdcda | 6 | } DeviceI2CSettings; |
Diletant | 156:e68ee0bcdcda | 7 | |
Diletant | 156:e68ee0bcdcda | 8 | #define I2C_BUFFER_LENGTH 6 |
Diletant | 156:e68ee0bcdcda | 9 | typedef struct _DeviceI2CState { |
Diletant | 156:e68ee0bcdcda | 10 | uint32_t CON0; //Control register |
Diletant | 156:e68ee0bcdcda | 11 | uint32_t buffer[I2C_BUFFER_LENGTH]; //Transmission buffer |
Diletant | 156:e68ee0bcdcda | 12 | uint32_t position; //Buffer position |
Diletant | 156:e68ee0bcdcda | 13 | uint32_t counter; //Time out counter |
Diletant | 156:e68ee0bcdcda | 14 | uint32_t trigger; //Time out trigger |
Diletant | 156:e68ee0bcdcda | 15 | uint32_t enabled; //Transmission enabled |
Diletant | 156:e68ee0bcdcda | 16 | } DeviceI2CState; |
Diletant | 156:e68ee0bcdcda | 17 | |
Diletant | 156:e68ee0bcdcda | 18 | typedef struct _DeviceI2C { |
Diletant | 156:e68ee0bcdcda | 19 | DeviceI2CState state; |
Diletant | 156:e68ee0bcdcda | 20 | DeviceI2CSettings settings; |
Diletant | 156:e68ee0bcdcda | 21 | } DeviceI2C; |
Diletant | 156:e68ee0bcdcda | 22 | |
Diletant | 167:bedc0a9d559a | 23 | void InitI2CDefaultSettings(void); |
Diletant | 167:bedc0a9d559a | 24 | void InitI2CState(void); |
Diletant | 167:bedc0a9d559a | 25 | void DeviceStartI2C(void); |
Diletant | 167:bedc0a9d559a | 26 | |
Diletant | 183:c7a9c309086c | 27 | void i2cEnableTransmission(void); |
Diletant | 183:c7a9c309086c | 28 | void i2cProcess(void); |
Diletant | 156:e68ee0bcdcda | 29 | #endif /* __DEVICE_I2C_H__ */ |