Index: firmware/App/Drivers/BloodLeakDriver.c =================================================================== diff -u -r6f7ada05f12562eef3d0135168b37cdabf7e3eae -rb2436685ec42e879781b0bc1348ba80f333196bb --- firmware/App/Drivers/BloodLeakDriver.c (.../BloodLeakDriver.c) (revision 6f7ada05f12562eef3d0135168b37cdabf7e3eae) +++ firmware/App/Drivers/BloodLeakDriver.c (.../BloodLeakDriver.c) (revision b2436685ec42e879781b0bc1348ba80f333196bb) @@ -1,11 +1,27 @@ -#include "BloodLeakDriver.h" +/************************************************************************** +* +* Copyright (c) 2025-2026 Diality Inc. - All Rights Reserved. +* +* THIS CODE MAY NOT BE COPIED OR REPRODUCED IN ANY FORM, IN PART OR IN +* WHOLE, WITHOUT THE EXPLICIT PERMISSION OF THE COPYRIGHT OWNER. +* +* @file BloodLeakDriver.c +* +* @author (last) Dara Navaei +* @date (last) 10-Sep-2024 +* +* @author (original) Dara Navaei +* @date (original) 10-Sep-2024 +* +***************************************************************************/ -#include #include +#include #include #include "AlarmMgmtDD.h" #include "BloodLeak.h" +#include "BloodLeakDriver.h" #include "Messaging.h" #include "Timers.h" #include "Utilities.h" @@ -44,7 +60,7 @@ #define DATA_PUBLISH_COUNTER_START_COUNT 60 ///< Data publish counter start count. #define BLOOD_LEAK_DETECT_RECOVERY_MIN_TIME_MS ( 2 * MS_PER_SECOND ) ///< Blood leak blood detect recovery minimum time in milliseconds. -// Embedded mode defines +/// Embedded mode defines #define BLOOD_LEAK_EMB_MODE_CMD_SEQ_LENGTH 6 ///< Blood leak embedded mode command sequence length. #define BLOOD_LEAK_EMB_MODE_RQST_RX_LENGTH 2 ///< Blood leak embedded mode request new Rx data length. #define BLOOD_LEAK_EMB_MODE_COMM_ACTIVE_HIGH 5 ///< Blood leak embedded mode communication active high command. @@ -135,14 +151,13 @@ U32 responseLen; ///< Blood leak response length. U08 responseBuffer[ BLOOD_LEAK_EMB_MODE_RESP_BUFFER_LEN ]; ///< Blood leak response buffer. } BLOOD_LEAK_EMB_MODE_RESP_T; -//#pragma pack(pop) +#pragma pack(pop) // ********** private data ********** static BLOOD_LEAK_STATE_T bloodLeakState; static U32 bloodLeakUARTCmdIndex; static U32 bloodLeakSetPointSeqLength; static U08 bloodLeakSetPointSequence[ BLOOD_LEAK_SET_POINT_SEQ_MAX_LENGTH ][ 2 ]; -//static U32 blooadLeakRecoveryStartTimeMS; // Embedded mode variables static BOOL bloodLeakSignalEmbModeReq; ///< Blood leak signal embedded mode has been requested. @@ -160,8 +175,6 @@ static U08 bloodLeakEmbModeCmdQRearIndex; ///< Blood leak embedded mode command queue rear index. static U08 bloodLeakEmbModeCmdQFrontIndex; ///< Blood leak embedded mode command queue front index. static U08 bloodLeakEmbModeCmdQCount; ///< Blood leak embedded mode command queue count. -//static BOOL bloodLeakEmbModeHasZeroBeenRqustd; ///< Blood leak embedded mode flag to indicate zero has been requested. -//static U32 bloodLeakEmbModeCmdEnqueueCount; ///< Blood leak embedded mode command enqueue count. static U32 bloodLeakEmbModeInfoCmdEnqLastTimeStamp; ///< Blood leak embedded mode informative command (i.e. I, V, D) timer. static U32 bloodLeakEmbModeInfoCmdCounter; ///< Blood leak embedded mode informative command counter. static OVERRIDE_U32_T bloodLeakEmbModeIntensityOverride; ///< Blood leak embedded mode intensity override. @@ -181,7 +194,7 @@ /*********************************************************************//** * @brief - * The initBloodLeak function initializes the Blood Leak module. + * The initBloodLeakDriver function initializes the Blood Leak module. * @details \b Inputs: none * @details \b Outputs: bloodLeakState, bloodLeakStatus, bloodLeakSelfTestStatus, * bloodLeakUARTCmdIndex, bloodLeakSetPointSequence @@ -196,40 +209,26 @@ * bloodLeakZeroingStatus * @return none *************************************************************************/ -void initBloodLeak( void ) +void initBloodLeakDriver( void ) { // Initialize the embedded mode specifications initEmbModeSpecs(); bloodLeakEmbModeRespIndex = 0; - //bloodLeakExitNormalRequested = FALSE; bloodLeakEmbModeCmdSeqLength = 0; bloodLeakEmbModeHasRxRqstBeenSent = FALSE; bloodLeakEmbModeCmdQFrontIndex = 0; bloodLeakEmbModeCmdQRearIndex = 0; bloodLeakEmbModeCmdQCount = 0; - //bloodLeakEmbModeHasZeroBeenRqustd = FALSE; - //bloodLeakEmbModeCmdEnqueueCount = 0; bloodLeakEmbModeInfoCmdEnqLastTimeStamp = getMSTimerCount(); bloodLeakEmbModeInfoCmdCounter = 0; - //bloodLeakRecoveryStartTimeMS = getMSTimerCount(); - // Initialize the blood leak embedded mode response buffer memset( bloodLeakEmbModeRespBuffer, 0x0, BLOOD_LEAK_EMB_MODE_RESP_BUFFER_LEN ); // Initialize the blood leak embedded mode command sequence memset( bloodLeakEmbModeCmdSeq, 0x0, BLOOD_LEAK_EMB_MODE_CMD_SEQ_LENGTH ); -// bloodLeakZeroingStatus.zeroingDriftIntervalTimeMS.data = BLD_ZERO_MIN_INTERVAL_MS; -// bloodLeakZeroingStatus.zeroingDriftIntervalTimeMS.ovInitData = BLD_ZERO_MIN_INTERVAL_MS; -// bloodLeakZeroingStatus.zeroingDriftIntervalTimeMS.ovData = 0; -// bloodLeakZeroingStatus.zeroingDriftIntervalTimeMS.override = 0; -// bloodLeakZeroingStatus.zeroingUpperRangeIntervalTimeMS.data = BLD_UPPER_INTENSITY_INTERVAL_MS; -// bloodLeakZeroingStatus.zeroingUpperRangeIntervalTimeMS.ovInitData = BLD_UPPER_INTENSITY_INTERVAL_MS; -// bloodLeakZeroingStatus.zeroingUpperRangeIntervalTimeMS.ovData = 0; -// bloodLeakZeroingStatus.zeroingUpperRangeIntervalTimeMS.override = 0; - // Enqueue the commands to set the embedded mode and request the set point of the blood leak sensor enqueueEmbModeCmd( CS_EMB_MODE_CMD ); enqueueEmbModeCmd( D_EMB_MODE_CMD ); @@ -267,7 +266,6 @@ } } - /*********************************************************************//** * @brief * The handleBloodLeakEmbModeWaitForCommandState function handles the wait for @@ -1217,5 +1215,4 @@ return result; } - /**@}*/