nvramManualUpdateBlocked
nvramManualUpdateBlocked | ||||
Function | Starts a manual update of the NVRAM content (blocking on the current priority). | |||
Syntax | uint32 nvramManualUpdateBlocked(uint32 timeoutUs) | |||
Description | This function starts a manual update of the NVRAM content. Manual update has precedence over the automatic periodical update. Thus, a potentially running periodical update is aborted. But if cyclic update is on the way (the Idle task is interrupted by a preemptive task with the call of this function), start of manual update is impossible This function blocks on the current priority until all NV variable contents have been written to the local buffer or until a time-out occurred. After the function has returned, the update process (writing from local buffer into the NVRAM) is continued in the Idle task (even if a time-out occurred). The completion of the update process can be tested via the function nvramCheckRunningUpdate(). Because interrupts are not suspended during this process, a preemptive task with higher priority might interrupt the update process. This could lead to data inconsistencies if this task modifies any NV variable contents.
| |||
Return code | EC_NVRAM_SUCCESS | Success | ||
EC_NVRAM_NO_NV_VARIABLES | No NV variables inside the model | |||
EC_NVRAM_FATAL_ERROR | Fatal error occurred before | |||
EC_NVRAM_OVERFLOW | Overflow of NVRAM. Reduce Number / Size of NV variables. | |||
EC_NVRAM_UPDATE_RUNNING | Other Update process (manual or cyclic) is currently running. Start of manual update failed. | |||
Parameter | timeoutUs | Time-out period in ms | ||
Example | --- | |||
See also | nvramManualUpdateExit, nvramManualUpdateBackground, nvramCheckRunningUpdate | |||