From 0fe624841b65734ebdd15482dac42e8f6f6f0949 Mon Sep 17 00:00:00 2001 From: Avi Levkovich Date: Mon, 8 Jun 2020 15:00:00 +0300 Subject: Extended the actuator stub --- .../Embedded/Modules/Stubs_Handler/Progress.c | 41 ++++++++++++++++++++-- 1 file changed, 38 insertions(+), 3 deletions(-) (limited to 'Software/Embedded_SW/Embedded/Modules') diff --git a/Software/Embedded_SW/Embedded/Modules/Stubs_Handler/Progress.c b/Software/Embedded_SW/Embedded/Modules/Stubs_Handler/Progress.c index 8d736f352..88c5d2d8c 100644 --- a/Software/Embedded_SW/Embedded/Modules/Stubs_Handler/Progress.c +++ b/Software/Embedded_SW/Embedded/Modules/Stubs_Handler/Progress.c @@ -611,9 +611,44 @@ void Stub_ProgressRequest(MessageContainer* requestContainer) if((request -> delay & 0xFFF000) == 0xCAF000)//Actuator { - //HeadCard_Actuators_Control((ACTUATORS)(((request -> delay) & 0x100)>>8), /*(bool)((request -> delay & 0x10)>>4), */(bool)((request -> delay & 0x01)));//Actuators: ID, power, Direction - Trigger_Head_Actuators_Control((ACTUATORS)(((request -> delay) & 0x100)>>8), (bool)((request -> delay & 0x10)>>4), (bool)((request -> delay & 0x01)));//Actuators: ID, power, Direction - //response.progress = HeadCard_Actuators_Status((ACTUATORS)((request -> delay) & 0x100)>>8); + if((request -> delay & 0x00000F) >1) + { + if((request -> delay & 0xFFFFFF) == 0xCAF002)//ACTUATOR-IN down without delay and without stop the actuator + { + Trigger_Head_Actuators_Stub(ACTIN, true, false); + } + else + if((request -> delay & 0xFFFFFF) == 0xCAF003)//ACTUATOR-IN up without delay and without stop the actuator + { + Trigger_Head_Actuators_Stub(ACTIN, true, true); + } + else + if((request -> delay & 0xFFFFFF) == 0xCAF008)//Stop ACTUATOR-IN + { + Trigger_Head_Actuators_Stub(ACTIN, false, true); + } + else + if((request -> delay & 0xFFFFFF) == 0xCAF102)//ACTUATOR-OUT down without delay and without stop the actuator + { + Trigger_Head_Actuators_Stub(ACTOT, true, false); + } + else + if((request -> delay & 0xFFFFFF) == 0xCAF103)//ACTUATOR-OUT up without delay and without stop the actuator + { + Trigger_Head_Actuators_Stub(ACTOT, true, true); + } + else + if((request -> delay & 0xFFFFFF) == 0xCAF108)//Stop ACTUATOR-OUT + { + Trigger_Head_Actuators_Stub(ACTOT, false, true); + } + } + else + { + //HeadCard_Actuators_Control((ACTUATORS)(((request -> delay) & 0x100)>>8), /*(bool)((request -> delay & 0x10)>>4), */(bool)((request -> delay & 0x01)));//Actuators: ID, power, Direction + Trigger_Head_Actuators_Control((ACTUATORS)(((request -> delay) & 0x100)>>8), (bool)((request -> delay & 0x10)>>4), (bool)((request -> delay & 0x01)));//Actuators: ID, power, Direction + //response.progress = HeadCard_Actuators_Status((ACTUATORS)((request -> delay) & 0x100)>>8); + } response.has_progress = true; } else -- cgit v1.3.1