aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Embedded_SW
diff options
context:
space:
mode:
authorAvi Levkovich <avi@twine-s.com>2019-03-24 13:42:15 +0200
committerAvi Levkovich <avi@twine-s.com>2019-03-24 13:42:15 +0200
commitc4be36f27bc7c0fa9d0153d6d09ab13bc1826ee8 (patch)
treea8dd389ad4eb64473104e9d6d8baa23b91888a44 /Software/Embedded_SW
parent908189dee60097f5bf4e13e7c080836f52e0585d (diff)
downloadTango-c4be36f27bc7c0fa9d0153d6d09ab13bc1826ee8.tar.gz
Tango-c4be36f27bc7c0fa9d0153d6d09ab13bc1826ee8.zip
add functions to read the jogging and load buttons
Diffstat (limited to 'Software/Embedded_SW')
-rw-r--r--Software/Embedded_SW/Embedded/Drivers/FPGA/FPGA_Comm.h13
-rw-r--r--Software/Embedded_SW/Embedded/Drivers/FPGA/FPGA_GPIO/FPGA_GPIO.c28
-rw-r--r--Software/Embedded_SW/Embedded/Drivers/FPGA/FPGA_GPIO/FPGA_GPIO.h4
-rw-r--r--Software/Embedded_SW/Embedded/Modules/Control/MillisecTask.c1
4 files changed, 46 insertions, 0 deletions
diff --git a/Software/Embedded_SW/Embedded/Drivers/FPGA/FPGA_Comm.h b/Software/Embedded_SW/Embedded/Drivers/FPGA/FPGA_Comm.h
index 15bdf97cd..614f2affa 100644
--- a/Software/Embedded_SW/Embedded/Drivers/FPGA/FPGA_Comm.h
+++ b/Software/Embedded_SW/Embedded/Drivers/FPGA/FPGA_Comm.h
@@ -751,6 +751,19 @@
#define F3_LOw_Cart_Led3 F3_low_var_SPARE2_2
#define F3_High_Cart_Led3 F3_high_var_SPARE2_2
+//F3_GPI_02_Direct
+typedef union
+{
+ struct
+ {
+ bool F3_GPI_TACTSW4 : 1; //0
+ bool F3_GPI_TACTSW3 : 1; //1
+ bool Thread_Jogging_Switch : 1; //2 (F3_GPI_TACTSW2)
+ bool Thread_Load_Switch : 1; //3 (F3_GPI_TACTSW1)
+ unsigned short F3_GPI_02_RESERVE : 12; //4-16
+ }bits;
+ unsigned short ushort;
+}F3_GPI_02;
//1 Version1_Direct
typedef union
diff --git a/Software/Embedded_SW/Embedded/Drivers/FPGA/FPGA_GPIO/FPGA_GPIO.c b/Software/Embedded_SW/Embedded/Drivers/FPGA/FPGA_GPIO/FPGA_GPIO.c
index 1c6b7db8d..bd716eea8 100644
--- a/Software/Embedded_SW/Embedded/Drivers/FPGA/FPGA_GPIO/FPGA_GPIO.c
+++ b/Software/Embedded_SW/Embedded/Drivers/FPGA/FPGA_GPIO/FPGA_GPIO.c
@@ -702,6 +702,34 @@ uint8_t Buzzer(OPERATION_MODE Buzzer_Mode)
return Status;
}
+
+F3_GPI_02 F3_GPI_02_Reg;
+
+void Read_Buttons_Reg()
+{
+ F3_GPI_02_Reg.ushort = F3_GPI_02_Direct;
+}
+
+bool Get_Thread_Jogging_Button()
+{
+ bool IsThreadJoggingPressed = false;
+
+ if(F3_GPI_02_Reg.bits.Thread_Jogging_Switch == true)
+ IsThreadJoggingPressed = true;
+
+ return IsThreadJoggingPressed;
+}
+
+bool Get_Thread_Load_Button()
+{
+ bool IsThreadLoadPressed = false;
+
+ if(F3_GPI_02_Reg.bits.Thread_Load_Switch == true)
+ IsThreadLoadPressed = true;
+
+ return IsThreadLoadPressed;
+}
+
bool Read_PWR_Button()//TODO move to GPIO folder
{
diff --git a/Software/Embedded_SW/Embedded/Drivers/FPGA/FPGA_GPIO/FPGA_GPIO.h b/Software/Embedded_SW/Embedded/Drivers/FPGA/FPGA_GPIO/FPGA_GPIO.h
index c98ba5941..409f75418 100644
--- a/Software/Embedded_SW/Embedded/Drivers/FPGA/FPGA_GPIO/FPGA_GPIO.h
+++ b/Software/Embedded_SW/Embedded/Drivers/FPGA/FPGA_GPIO/FPGA_GPIO.h
@@ -191,6 +191,10 @@ void Power_Reset();
uint8_t Buzzer(OPERATION_MODE Buzzer_Mode);
bool Read_PWR_Button();//TODO move to GPIO folder
+void Read_Buttons_Reg();
+bool Get_Thread_Jogging_Button();
+bool Get_Thread_Load_Button();
+
uint32_t Control_WD(bool IsEnable, unsigned char SetTimer_Steps100mSec);
uint32_t ActivateChiller();
diff --git a/Software/Embedded_SW/Embedded/Modules/Control/MillisecTask.c b/Software/Embedded_SW/Embedded/Modules/Control/MillisecTask.c
index 7c7885692..738f59686 100644
--- a/Software/Embedded_SW/Embedded/Modules/Control/MillisecTask.c
+++ b/Software/Embedded_SW/Embedded/Modules/Control/MillisecTask.c
@@ -474,6 +474,7 @@ uint32_t MillisecLowLoop(uint32_t tick)
if (Hundred_msTick)
{
Speed_Data = Calculate_Speed_Sensor_Velocity();
+ Read_Buttons_Reg();
for (Sensor_i = 0;Sensor_i < MAX_TEMPERATURE_SENSOR_ID;Sensor_i++)
{
MillisecReadFromTempSensor(Sensor_i, NULL);