The EEPROM stream read/write functions now use eeprom_update_byte() instead of eeprom_write_byte(), so that only changed bytes are written to EEPROM to preserve its lifespan.
Changed over the AVRISP-MKII and TemperatureDataLogger projects to use eeprom_update_byte() when writing non-volatile parameters to EEPROM to preserve its lifespan.
This commit is contained in:
parent
bb9fb1051c
commit
670413603f
6 changed files with 23 additions and 10 deletions
|
@ -266,7 +266,7 @@ uint8_t Endpoint_Discard_Stream(uint16_t Length
|
|||
#define TEMPLATE_BUFFER_TYPE void*
|
||||
#define TEMPLATE_CLEAR_ENDPOINT() Endpoint_ClearOUT()
|
||||
#define TEMPLATE_BUFFER_OFFSET(Length) 0
|
||||
#define TEMPLATE_TRANSFER_BYTE(BufferPtr) eeprom_write_byte((uint8_t*)BufferPtr++, Endpoint_Read_Byte())
|
||||
#define TEMPLATE_TRANSFER_BYTE(BufferPtr) eeprom_update_byte((uint8_t*)BufferPtr++, Endpoint_Read_Byte())
|
||||
#include "Template/Template_Endpoint_RW.c"
|
||||
|
||||
#define TEMPLATE_FUNC_NAME Endpoint_Read_Stream_BE
|
||||
|
@ -280,7 +280,7 @@ uint8_t Endpoint_Discard_Stream(uint16_t Length
|
|||
#define TEMPLATE_BUFFER_TYPE void*
|
||||
#define TEMPLATE_CLEAR_ENDPOINT() Endpoint_ClearOUT()
|
||||
#define TEMPLATE_BUFFER_OFFSET(Length) (Length - 1)
|
||||
#define TEMPLATE_TRANSFER_BYTE(BufferPtr) eeprom_write_byte((uint8_t*)BufferPtr--, Endpoint_Read_Byte())
|
||||
#define TEMPLATE_TRANSFER_BYTE(BufferPtr) eeprom_update_byte((uint8_t*)BufferPtr--, Endpoint_Read_Byte())
|
||||
#include "Template/Template_Endpoint_RW.c"
|
||||
|
||||
#endif
|
||||
|
@ -322,7 +322,7 @@ uint8_t Endpoint_Discard_Stream(uint16_t Length
|
|||
|
||||
#define TEMPLATE_FUNC_NAME Endpoint_Read_Control_EStream_LE
|
||||
#define TEMPLATE_BUFFER_OFFSET(Length) 0
|
||||
#define TEMPLATE_TRANSFER_BYTE(BufferPtr) eeprom_write_byte((uint8_t*)BufferPtr++, Endpoint_Read_Byte())
|
||||
#define TEMPLATE_TRANSFER_BYTE(BufferPtr) eeprom_update_byte((uint8_t*)BufferPtr++, Endpoint_Read_Byte())
|
||||
#include "Template/Template_Endpoint_Control_R.c"
|
||||
|
||||
#define TEMPLATE_FUNC_NAME Endpoint_Read_Control_Stream_BE
|
||||
|
@ -332,7 +332,7 @@ uint8_t Endpoint_Discard_Stream(uint16_t Length
|
|||
|
||||
#define TEMPLATE_FUNC_NAME Endpoint_Read_Control_EStream_BE
|
||||
#define TEMPLATE_BUFFER_OFFSET(Length) (Length - 1)
|
||||
#define TEMPLATE_TRANSFER_BYTE(BufferPtr) eeprom_write_byte((uint8_t*)BufferPtr--, Endpoint_Read_Byte())
|
||||
#define TEMPLATE_TRANSFER_BYTE(BufferPtr) eeprom_update_byte((uint8_t*)BufferPtr--, Endpoint_Read_Byte())
|
||||
#include "Template/Template_Endpoint_Control_R.c"
|
||||
|
||||
#endif
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue