Rev 254 | Rev 264 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 254 | Rev 256 | ||
---|---|---|---|
Line 84... | Line 84... | ||
84 | void EEPROM_RxDataHandler(u8* pRxBuffer, u8 RxBufferSize) |
84 | void EEPROM_RxDataHandler(u8* pRxBuffer, u8 RxBufferSize) |
85 | { // if number of byte are matching |
85 | { // if number of byte are matching |
86 | if((RxBufferSize == EEPROM_DataLen)) |
86 | if((RxBufferSize == EEPROM_DataLen)) |
87 | { //copy data from primary buffer to target buffer |
87 | { //copy data from primary buffer to target buffer |
88 | if(EEPROM_pData) memcpy((u8*)EEPROM_pData, pRxBuffer, EEPROM_DataLen); |
88 | if(EEPROM_pData) memcpy((u8*)EEPROM_pData, pRxBuffer, EEPROM_DataLen); |
89 | } |
89 | } |
90 | } |
90 | } |
Line 91... | Line 91... | ||
91 | 91 | ||
92 | // ---------------------------------------------------------------------------------------- |
92 | // ---------------------------------------------------------------------------------------- |
93 | EEPROM_Result_t EEPROM_Transfer(u8 Direction, u16 Address, u8 *pData, u16 DataLen) |
93 | EEPROM_Result_t EEPROM_Transfer(u8 Direction, u16 Address, u8 *pData, u16 DataLen) |
Line 141... | Line 141... | ||
141 | } |
141 | } |
142 | } |
142 | } |
143 | //wait for end of this transfer |
143 | //wait for end of this transfer |
144 | if(I2C_WaitForEndOfTransmission(I2C_TRANSFER_TIMEOUT)) |
144 | if(I2C_WaitForEndOfTransmission(I2C_TRANSFER_TIMEOUT)) |
145 | { |
145 | { |
146 | DebugOut.Analog[26] = I2C_Error; |
- | |
147 | if(I2C_Error == I2C_ERROR_NONE) retval = EEPROM_SUCCESS; |
146 | if(I2C_Error == I2C_ERROR_NONE) return(EEPROM_SUCCESS); |
148 | else retval = EEPROM_ERROR_I2C_TRANSFER_TIMEOUT; |
147 | else retval = EEPROM_DATA_TRANSFER_INCOMPLETE; |
149 | break; |
- | |
150 | } |
148 | } |
- | 149 | else// i2c transfer timed out |
|
- | 150 | { |
|
- | 151 | return(EEPROM_ERROR_I2C_TRANSFER_TIMEOUT); |
|
- | 152 | } |
|
151 | // or retry |
153 | // or retry |
152 | I2C_State = I2C_STATE_IDLE; |
- | |
153 | } while(++retry < I2C_ACCESS_RETRYS); |
154 | } while(++retry < I2C_ACCESS_RETRYS); |
154 | return(retval); |
155 | return(retval); |
155 | } |
156 | } |
Line 156... | Line 157... | ||
156 | 157 |