aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Embedded_SW/Embedded/Modules/IDS/IDS_dispenser.c
diff options
context:
space:
mode:
authorShlomo Hecht <shlomo@twine-s.com>2020-12-20 11:32:47 +0200
committerShlomo Hecht <shlomo@twine-s.com>2020-12-20 11:32:47 +0200
commit295cc6981e5fca0f958c7aef06ee9cf8f25a762c (patch)
tree865e7e83992953d3432060c5d9a5824e63fd32ea /Software/Embedded_SW/Embedded/Modules/IDS/IDS_dispenser.c
parent631fd1917ab3809b4b8d7e0066c49572f76688da (diff)
downloadTango-295cc6981e5fca0f958c7aef06ee9cf8f25a762c.tar.gz
Tango-295cc6981e5fca0f958c7aef06ee9cf8f25a762c.zip
Version 1.6.0 mostly changes in flash and EEPROM
Diffstat (limited to 'Software/Embedded_SW/Embedded/Modules/IDS/IDS_dispenser.c')
-rw-r--r--Software/Embedded_SW/Embedded/Modules/IDS/IDS_dispenser.c21
1 files changed, 15 insertions, 6 deletions
diff --git a/Software/Embedded_SW/Embedded/Modules/IDS/IDS_dispenser.c b/Software/Embedded_SW/Embedded/Modules/IDS/IDS_dispenser.c
index c8f435cb9..4ee94dae4 100644
--- a/Software/Embedded_SW/Embedded/Modules/IDS/IDS_dispenser.c
+++ b/Software/Embedded_SW/Embedded/Modules/IDS/IDS_dispenser.c
@@ -17,7 +17,8 @@
#include "Common/SWUpdate/FileSystem.h"
#include "drivers/Flash_Memory/fatfs/ff.h"
-#include "drivers/Flash_ram/FlashProgram.h"
+//#include "drivers/Flash_ram/FlashProgram.h"
+#include "drivers/Flash_ram/MCU_E2Prom.h"
#include "StateMachines/Printing/PrintingSTM.h"
@@ -249,7 +250,10 @@ void IDS_Dispenser_Content_Init (void)
}
//==================================
- memcpy(&Bytes,(void *)DISPENSERS_MAP_IN_FLASH,sizeof(Bytes));
+ //MCU_E2PromProgramChunk(DISPENSERS_MAP_IN_EEPROM,4,&Bytes);
+
+ MCU_E2PromReadChunk(DISPENSERS_MAP_IN_EEPROM,4,&Bytes);
+ //memcpy(&Bytes,(void *)DISPENSERS_MAP_IN_FLASH,sizeof(Bytes));
bool havedata = false;
DispenserData* StoredDispenserData;
if ((Bytes)&&(Bytes < 500))
@@ -257,9 +261,11 @@ void IDS_Dispenser_Content_Init (void)
buffer = my_malloc (Bytes);
if (buffer)
{
- memcpy(buffer, (void *)(DISPENSERS_MAP_IN_FLASH+4),Bytes);
+ MCU_E2PromReadChunk(DISPENSERS_MAP_IN_EEPROM+4,Bytes,buffer);
+ //memcpy(buffer, (void *)(DISPENSERS_MAP_IN_FLASH+4),Bytes);
StoredDispenserData = dispenser_data__unpack(NULL,Bytes,buffer);
- havedata = true;
+ if (StoredDispenserData)
+ havedata = true;
free(buffer);
}
}
@@ -323,11 +329,14 @@ uint32_t IDS_Dispenser_Store_Data (void)
if (JobIsActive()==false)
{
response_size = dispenser_data__pack(&StoreDispenserData, dispensers_container_buffer);
- EraseFlashSection(DISPENSERS_SECTION_FLASH);
+
+ MCU_E2PromProgramChunk(DISPENSERS_MAP_IN_EEPROM,4,&response_size);
+ MCU_E2PromProgramChunk(DISPENSERS_MAP_IN_EEPROM+4, response_size, dispensers_container_buffer);
+ /*EraseFlashSection(DISPENSERS_SECTION_FLASH);
ReadAppAndProgram(DISPENSERS_MAP_IN_FLASH, 4,&response_size);
ReadAppAndProgram(DISPENSERS_MAP_IN_FLASH+4, response_size, dispensers_container_buffer);
//ReportWithPackageFilter(IDSFilter,"IDS_Dispenser_Store ",__FILE__,__LINE__,(int)response_size,RpWarning,(int)StoreDispenserData.dispenserinfo[4]->nanolitterperpulse *100,0);
-
+ */
/*Status = FileWrite(IDS_Dispenser_Data,response_size,DispenserStorePath,BIOS_NO_WAIT);
if (Status == FR_OK)
{