Manage access to the External Electrically Erasable Programmable Memory.
The FEB 64 board contains a 64K (8192 x 8) external memory, which one quarter of this memory is defined as a protected area. The standard FEB64 firmware doesn't contain any code for Write access to the protected memory ensuring a safe storage method for the main parameter i.e: Serial Number (S/N). To simplify the handling of this eepage, a unique structure maps all the necessary parameters following the S/N located as first element of the structure. The size of the structure can therefore not be larger then a quarter of the total memory providing a maximum of 3 R/W [0..2] accessible pages.
Note Protected page is accessible in ReadOnly at page [3].
The current structure is:
// EEPROM structure struct EEPAGE { unsigned long SerialN; unsigned int structsze; unsigned int rasum[8]; unsigned int rqpump; unsigned int SWbias; unsigned int calQpump; unsigned char rbias [64]; // // back door access starts @ 92 ->offset=23 (0x17) float lVIlimit[8]; // vQ iQ +6Vd +6Va -6Va -6Ia +6Ia +6Id float uVIlimit[8]; float luCTlimit, uuCTlimit; float lSSTlimit, uSSTlimit; float lVQlimit, uVQlimit; float lIQlimit, uIQlimit; float lVBiaslimit, uVBiaslimit; float lIBiaslimit, uIBiaslimit; float ext1offset[4]; float ext2offset[4]; float iBiasOffset[8]; float vBiasOffset[8]; };
The Write operation requires extra time. The completion of the Write operation is confirmed when and only when the control bit is turned off, status will reflect operation completion as well.
MSCB(1): Error 16bit U 0 (0x0000) (RO) EEPROM R/W error 0x0800 MSCB(2): Control 8bit U 0 (0x00/00000000) (WO) Save current setting to EEPAGEx 0x10 Restore EEPAGEx to memory 0x20 MSCB(3): Status 8bit U 3 (0x03/00000011) (RO) EEPAGEx save operation complete 0x10 EEPAGEx restore operation complete 0x20 MSCB(4): EEPage 8bit U 0 (0x00/00000000) (WO) EEPAGE number [0..3]
The following steps will be used to store data into the page 2 of the external EEPROM.