Index: AD5941_interface09302025/ad5941_library_extension.h =================================================================== diff -u -r00e9a3fe8b32dd4867784af1134f7cc2904d579f -r27e8dd0f97a999fe4d0b60dd5f9d083455f93509 --- AD5941_interface09302025/ad5941_library_extension.h (.../ad5941_library_extension.h) (revision 00e9a3fe8b32dd4867784af1134f7cc2904d579f) +++ AD5941_interface09302025/ad5941_library_extension.h (.../ad5941_library_extension.h) (revision 27e8dd0f97a999fe4d0b60dd5f9d083455f93509) @@ -1,5 +1,5 @@ -#define VERSION "AD5941_updatedAcqBuild_SATCHECKS" -#define AUTHOR "09/30/2025, MK" +#define VERSION "AD5941_hotFixNoInterruptsExitFixed" +#define AUTHOR "01/09/2026, MK" /** * @file ad5941_library_extension.h @@ -28,11 +28,15 @@ #include "impedance.h" } #include +#include - /******************************************************************************* * USER CONFIGURATION SECTION ******************************************************************************/ + + // Stores the instance of currently connected / detected Serial port +extern Stream* activeSerial; + // SPI Settings #define SPI_SPEED 1600000 @@ -97,6 +101,7 @@ #define DEFAULT_DFTNUM DFTNUM_16384 #define maxValueThresholdADC 55000 // upper limit for saturation flag +#define MAX_NUM_OF_SENSORS 6 // Total number of sensors. /******************************************************************************* * FUNCTION DECLARATIONS - DO NOT MODIFY BELOW THIS LINE @@ -117,7 +122,6 @@ void canary(const char* format, ...); void AD5940_InterruptHandler(); - /****************************************************************************** * APPLICATION SPECIFIC FUNCTIONS * @@ -149,7 +153,7 @@ void handleSaveCommand(String command); void handleLoadCommand(); void initializeAllUnits(); -void initializeSelectedUnits(); +bool initializeSelectedUnits(); void initializeSingleUnit(int unit); void printUnitStatusSummary(); void measureAllSuccessfulUnits(); @@ -161,4 +165,25 @@ void fullAD5940Reset(); static void AD5940_EnableAdcMaxSaturationIRQ(uint32_t max_code, uint16_t hysteresis); static inline bool AD5940_IsAdcMaxSaturatedAndClear(); + +// ************************************ Diality ********************************************** +void detectSerial(); +void beginSerial(Stream* s, unsigned long baud); +bool getAllMesaurements(void); +void getSelectedSensorMeasurements(void); +float getRTDMeasurements(float sensor_mV); +void updateEEPROMdata(String command); +void getEEPROMdata(void); +void handleMstCommand(String cmd); +void updateMeasurementSettings(String cmd, uint8_t idx); +void getMesaurementSettings(void); +void getInitStatus(void); +void sendAllSensorData( void ); + +void initSinglePacketToDefault(void); +void initPacketToDefault ( int unit ); + +bool isSensorValid (int unit); +bool isSensorInitialized (int unit); + #endif