diff options
| author | Roy Ben-Shabat <Roy@Twine-s.com> | 2018-06-10 18:20:27 +0300 |
|---|---|---|
| committer | Roy Ben-Shabat <Roy@Twine-s.com> | 2018-06-10 18:20:27 +0300 |
| commit | 1799f92a5cd7421b1fc493ddf735d507aa289b8d (patch) | |
| tree | ee12f08e18d8cb9bba976a96d7004da3cbf7de73 /Software/Embedded_SW/Embedded | |
| parent | 230d8c17b1ecf96aaa6d579b90f28006722e3149 (diff) | |
| parent | d516e955b9dd7c13370d36f53f41e141c924fbe9 (diff) | |
| download | Tango-1799f92a5cd7421b1fc493ddf735d507aa289b8d.tar.gz Tango-1799f92a5cd7421b1fc493ddf735d507aa289b8d.zip | |
Merge branch 'master' of https://twinetfs.visualstudio.com/_git/Tango
Diffstat (limited to 'Software/Embedded_SW/Embedded')
| -rw-r--r-- | Software/Embedded_SW/Embedded/Drivers/I2C_Communication/I2C.c | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/Software/Embedded_SW/Embedded/Drivers/I2C_Communication/I2C.c b/Software/Embedded_SW/Embedded/Drivers/I2C_Communication/I2C.c index b5c8dc9fe..c4ebd2a6d 100644 --- a/Software/Embedded_SW/Embedded/Drivers/I2C_Communication/I2C.c +++ b/Software/Embedded_SW/Embedded/Drivers/I2C_Communication/I2C.c @@ -185,7 +185,7 @@ void Write_I2C(uint32_t I2C_BASE,uint32_t Slave_Add, uint8_t Byte2Write) //#define SLAVE_ADDRESS_EXT (0xE0>>1) //Slave_Add = Slave_Add #define NUM_OF_I2CBYTES 1 - uint8_t g_ui8MasterBytes = 0 ; + uint8_t g_ui8MasterBytes = 1 ; uint8_t g_ui8MasterTxData = Byte2Write; //TODO uint8_t g_ui8MasterBytesLength = 1; // ***************************************************************************** @@ -231,6 +231,19 @@ uint8_t Read_I2C(uint32_t I2C_BASE,uint32_t Slave_Add) return get; } +uint8_t Read_Single_I2C(uint32_t I2C_BASE,uint32_t Slave_Add) +{ + // Start Read from configured slave + I2CMasterSlaveAddrSet(I2C_BASE, Slave_Add, true); + + I2CMasterControl(I2C_BASE, I2C_MASTER_CMD_SINGLE_RECEIVE); + SysCtlDelay(15000); + + uint8_t get = I2CMasterDataGet(I2C_BASE); + + return get; +} + uint32_t I2C_control(uint32_t I2C_ID, uint32_t Slave_Add, bool RW,uint32_t Byte2Write ) { @@ -263,7 +276,8 @@ uint32_t I2C_control(uint32_t I2C_ID, uint32_t Slave_Add, bool RW,uint32_t Byte2 } else { - uint8_t value = Read_I2C(I2C_BASE, Slave_Add); + //uint8_t value = Read_I2C(I2C_BASE, Slave_Add); + uint8_t value = Read_Single_I2C(I2C_BASE, Slave_Add); return value; } } |
