aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Embedded_SW/Embedded/Modules
diff options
context:
space:
mode:
authorShlomo Hecht <shlomo@twine-s.com>2020-06-07 16:29:13 +0300
committerShlomo Hecht <shlomo@twine-s.com>2020-06-07 16:29:13 +0300
commit7ae59a2ae6cf8c4de8b420ea83c6282b8685fed5 (patch)
tree79db897a2f49eb966bd4746e89ffe9c7e44dc103 /Software/Embedded_SW/Embedded/Modules
parent22eaa079a4bd20c81d221b2fa623756fc338e168 (diff)
parent2137dbeeb984f4abcb2c7b7af83a396dd5d40879 (diff)
downloadTango-7ae59a2ae6cf8c4de8b420ea83c6282b8685fed5.tar.gz
Tango-7ae59a2ae6cf8c4de8b420ea83c6282b8685fed5.zip
Merge branch 'master' of https://twinetfs.visualstudio.com/Tango/_git/Tango
Diffstat (limited to 'Software/Embedded_SW/Embedded/Modules')
-rw-r--r--Software/Embedded_SW/Embedded/Modules/General/GeneralHardware.c4
-rw-r--r--Software/Embedded_SW/Embedded/Modules/IDS/IDS_ex.h1
-rw-r--r--Software/Embedded_SW/Embedded/Modules/IDS/IDS_init.c52
3 files changed, 4 insertions, 53 deletions
diff --git a/Software/Embedded_SW/Embedded/Modules/General/GeneralHardware.c b/Software/Embedded_SW/Embedded/Modules/General/GeneralHardware.c
index 035a3b3b3..2cf368ebd 100644
--- a/Software/Embedded_SW/Embedded/Modules/General/GeneralHardware.c
+++ b/Software/Embedded_SW/Embedded/Modules/General/GeneralHardware.c
@@ -483,7 +483,11 @@ uint32_t HWConfiguration(UploadHardwareConfigurationRequest* UploadRequest)
LOG_ERROR (Dispenser_i, "Dispenser identification failed");
//return ERROR;
}
+
+ status |= I2C_EEprom_Set_for_Read_Ch(Dispenser_i, 0xA0);
+ status |= I2C_EEprom_Read_Ch(Dispenser_i, 0xA0);
}
+ Calculateinit();
}
else
{
diff --git a/Software/Embedded_SW/Embedded/Modules/IDS/IDS_ex.h b/Software/Embedded_SW/Embedded/Modules/IDS/IDS_ex.h
index ad1d5b5c4..b3f21e187 100644
--- a/Software/Embedded_SW/Embedded/Modules/IDS/IDS_ex.h
+++ b/Software/Embedded_SW/Embedded/Modules/IDS/IDS_ex.h
@@ -12,7 +12,6 @@
#include "PMR/EmbeddedParameters/DispenserRunningData.pb-c.h"
#include "PMR/EmbeddedParameters/DispenserData.pb-c.h"
-#define MAX_SYSTEM_DISPENSERS 8
typedef enum {
LimitSwitchAlarmEmpty_1, //MOTO_DISPENSER_1 = 6,
LimitSwitchAlarmEmpty_2, //MOTO_DISPENSER_2 = 7,
diff --git a/Software/Embedded_SW/Embedded/Modules/IDS/IDS_init.c b/Software/Embedded_SW/Embedded/Modules/IDS/IDS_init.c
index 4a4e42b41..470bf974e 100644
--- a/Software/Embedded_SW/Embedded/Modules/IDS/IDS_init.c
+++ b/Software/Embedded_SW/Embedded/Modules/IDS/IDS_init.c
@@ -21,8 +21,6 @@ HardwareDispenser DispensersCfg[ MAX_SYSTEM_DISPENSERS];
TimerMotors_t DispenserIdToMotorId[MAX_SYSTEM_DISPENSERS] = {HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_1,HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_2,HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_3,HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_4,HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_5,HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_6,HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_7,HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_8};
-float DispenserPressure[MAX_SYSTEM_DISPENSERS] = {0};
-
float GetDispenserPressure(int DispenserId)
{
return DispenserPressure[DispenserId];
@@ -37,56 +35,6 @@ bool isDispenserInConfig(int DispenserId)
return true;
}
-float Vlow,VHigh,Bits_0Pascal,Bits_1MPascal,a,b;
-void Calculateinit (void)
-{
- Vlow = 0.004 * 130; // 4mA*130ohm = 0.52 V(0 Pascal)
- VHigh = 0.020 *130; // 20mA*130ohm = 2.6V (1M Pascal)
-
- Bits_0Pascal = Vlow * 4096 / 3; // Vlow * 4096bit / 3Vref = 709.973328 bits
- Bits_1MPascal = VHigh * 4096 / 3; // VHigh * 4096bit / 3Vref = 3549.86646 bits
-
- a = (1 - 0) / (Bits_1MPascal - Bits_0Pascal);// Mpascal/Bits = 0.000352125
-
- b = 0 - (a * Bits_0Pascal ); // y = ax + b (x= Bits_0Pascal, y = 0)
-
-}
-float CalculateDispenserPressure (int DispenserId)
-{
- unsigned short data = 0;
- float temp = 0.0;
-
-/*
- data = ADC_GetReading(DispenserIdToPressureSensorId[DispenserId]);
- temp = 4096 - data;
- temp *= 3;
- temp *= 1000; //move to mv
- temp /= 4096;
- DispenserPressure[DispenserId] = 3000 - temp;
- */
- data = ADC_GetReading(DispenserIdToPressureSensorId[DispenserId]);
-
- if(data<Bits_0Pascal)
- data = Bits_0Pascal;//40mA 0Bar
-
- temp = a * data + b;
-
- DispenserPressure[DispenserId] = temp; // [Mpascal] ( 1 Mpascal = 10 Bar )
-
- //unmark one of them to convert from Mpascal to :
- //-----------------------------------
- //DispenserPressure[DispenserId] /= 1000000; //Pascal
- //DispenserPressure[DispenserId] *=10; //Bar;
- //DispenserPressure[DispenserId] *=10000000; //uBar;
- //DispenserPressure[DispenserId] *=145.0377; //PSI;
-
- DispenserPressure[DispenserId] *= 10; //MPascal -> Bar
-
- //if(DispenserPressure[DispenserId] < 0 ) //why????
- // DispenserPressure[DispenserId] = 0;
-
- return(DispenserPressure[DispenserId]);
-}
uint32_t DispenserConfigMessage(HardwareDispenser * request)