diff options
author | barthess <barthess@35acf78f-673a-0410-8e92-d51de3d6d3f4> | 2011-01-30 21:19:51 +0000 |
---|---|---|
committer | barthess <barthess@35acf78f-673a-0410-8e92-d51de3d6d3f4> | 2011-01-30 21:19:51 +0000 |
commit | f4bdefbd11466c09dbf47f3eb680c33987a12172 (patch) | |
tree | a09ca0c4ec2745c723aeac312480780cbe34d339 /os/hal/include/i2c.h | |
parent | 7ebdd9c7306b46193f88c990a37c4b597911f5f7 (diff) | |
download | ChibiOS-f4bdefbd11466c09dbf47f3eb680c33987a12172.tar.gz ChibiOS-f4bdefbd11466c09dbf47f3eb680c33987a12172.tar.bz2 ChibiOS-f4bdefbd11466c09dbf47f3eb680c33987a12172.zip |
I2C. Async transmit done. Need much of testing.
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/branches/i2c_dev@2697 35acf78f-673a-0410-8e92-d51de3d6d3f4
Diffstat (limited to 'os/hal/include/i2c.h')
-rw-r--r-- | os/hal/include/i2c.h | 20 |
1 files changed, 9 insertions, 11 deletions
diff --git a/os/hal/include/i2c.h b/os/hal/include/i2c.h index e93f2249c..66019ccbf 100644 --- a/os/hal/include/i2c.h +++ b/os/hal/include/i2c.h @@ -61,12 +61,10 @@ typedef enum { I2C_UNINIT = 0, /**< Not initialized. */
I2C_STOP = 1, /**< Stopped. */
I2C_READY = 2, /**< Ready. */
-
I2C_MACTIVE = 3, /**< START condition sent. */
- I2C_MTXREADY = 4, /**< address sent when tx-flag set. */
- I2C_MTRANSMIT = 5, /**< Master transmitting. */
-
- I2C_MRECEIVE = 6, /**< Master receiving. */
+ I2C_MTRANSMIT = 4, /**< Master transmitting. */
+ I2C_MRECEIVE = 5, /**< Master receiving. */
+ I2C_MWAIT_TF = 6, /**< Master wait Transmission Finished */
I2C_MERROR = 7 /**< Error condition. */
} i2cstate_t;
@@ -123,14 +121,14 @@ extern "C" { void i2cObjectInit(I2CDriver *i2cp);
void i2cStart(I2CDriver *i2cp, I2CConfig *config);
void i2cStop(I2CDriver *i2cp);
- void i2cMasterTransmit(I2CDriver *i2cp, I2CSlaveConfig *i2cscfg, bool_t restart);
+ void i2cMasterTransmit(I2CDriver *i2cp, I2CSlaveConfig *i2cscfg);
void i2cMasterReceive(I2CDriver *i2cp, I2CSlaveConfig *i2cscfg);
- void i2cMasterStartI(I2CDriver *i2cp,uint16_t header,i2ccallback_t callback);
- void i2cMasterStopI(I2CDriver *i2cp, i2ccallback_t callback);
- void i2cMasterRestartI(I2CDriver *i2cp, i2ccallback_t callback);
- void i2cMasterTransmitI(I2CDriver *i2cp, size_t n, const uint8_t *txbuf, i2ccallback_t callback);
- void i2cMasterReceiveI(I2CDriver *i2cp, size_t n, uint8_t *rxbuf, i2ccallback_t callback);
+ void i2cMasterStartI(I2CDriver *i2cp,uint16_t header);
+ void i2cMasterStopI(I2CDriver *i2cp);
+ void i2cMasterRestartI(I2CDriver *i2cp);
+ void i2cMasterTransmitI(I2CDriver *i2cp, size_t n, const uint8_t *txbuf);
+ void i2cMasterReceiveI(I2CDriver *i2cp, size_t n, uint8_t *rxbuf);
#if I2C_USE_MUTUAL_EXCLUSION
void i2cAcquireBus(I2CDriver *i2cp);
void i2cReleaseBus(I2CDriver *i2cp);
|