Commit c59cd242 authored by Daniel Tonoiu's avatar Daniel Tonoiu
Browse files

add device access cpdu commands

parent ad772c9b
#The list of files and directory ignored by git
*.zip
/binary.c
/work_library
This diff is collapsed.
......@@ -134,10 +134,10 @@ addrsNo INTEGER (1..128) ::= 4
InstructionCounter ::= INTEGER (1..4)
-- Instantiate the TC-2-1
TC-2-1 ::= On-Off-Device-Command{On-off-dev-addr, addrsNo}
---------------------
-- CPDU output Identifier defined in 9.2.1d
CPDU-output-line-ID ::= INTEGER { cpdu-line1(1), cpdu-line2(2)} (0..4095)
-------------------------------------------------------------------------------------------------------------------------------------------
-- instantiate CPDU commands
--CPDU-output-line-ID ::= INTEGER { cpdu-line1(1), cpdu-line2(2)} (0..4095)
CPDU-output-line-ID ::= INTEGER (0..1) -- CPDU output Identifier defined in 9.2.1d
CPDU-Ids ::= ENUMERATED { cpdu-id-1, cpdu-id-2 }
......@@ -147,13 +147,14 @@ Pulse-Instr-Instance ::= Pulse-Instruction { CPDU-output-line-ID }
max-Instr-No INTEGER (12 .. 504) ::= 12
-- Maximum number of CPDU commands (!bounds constraints not found in PUS-C)
max-CPDU-Cmds INTEGER (1..128) ::= 2
Index-CPDU-Cmd ::= INTEGER (1..max-CPDU-Cmds)
CPDU-Cmd ::= CPDU-Command {CPDU-Ids, Pulse-Instr-Instance, max-Instr-No}
(WITH COMPONENTS {..., cpdu-id PRESENT})
-- Instantiate the TC-2-4
TC-2-4 ::= Distribute-CPDU-Commands {CPDU-Cmd, max-CPDU-Cmds}
--------------------------------------------------------------------------------------------------------------------------------------------------
-- Instantiate the project list of TC
TCs ::= CHOICE {
tc2-1 TC-2-1,
......@@ -374,6 +375,9 @@ END
......
......@@ -30,6 +30,10 @@ WITH interfaceview::IV::ground_system::ground_GUI;
WITH interfaceview::IV::ground_system::processTC;
WITH interfaceview::IV::sendTM;
WITH interfaceview::IV::st01_routing;
WITH interfaceview::IV::cpdu1_AP::acceptance_cpdu1;
WITH interfaceview::IV::cpdu1_AP::cpdu1;
WITH interfaceview::IV::cpdu1_AP::execution_cpdu1;
WITH interfaceview::IV::cpdu1_AP::tm_cpdu1;
WITH ocarina_processors_x86;
WITH deploymentview::DV::Node1;
WITH Taste;
......@@ -65,6 +69,18 @@ SUBCOMPONENTS
IV_st01_routing : SYSTEM interfaceview::IV::st01_routing::st01_routing.others {
Taste::FunctionName => "st01_routing";
};
IV_acceptance_cpdu1 : SYSTEM interfaceview::IV::cpdu1_AP::acceptance_cpdu1::acceptance_cpdu1.others {
Taste::FunctionName => "acceptance_cpdu1";
};
IV_cpdu1 : SYSTEM interfaceview::IV::cpdu1_AP::cpdu1::cpdu1.others {
Taste::FunctionName => "cpdu1";
};
IV_execution_cpdu1 : SYSTEM interfaceview::IV::cpdu1_AP::execution_cpdu1::execution_cpdu1.others {
Taste::FunctionName => "execution_cpdu1";
};
IV_tm_cpdu1 : SYSTEM interfaceview::IV::cpdu1_AP::tm_cpdu1::tm_cpdu1.others {
Taste::FunctionName => "tm_cpdu1";
};
taps : PROCESS deploymentview::DV::Node1::taps.others {
Taste::coordinates => "80770 67036 174706 102404";
Deployment::Port_Number => 0;
......@@ -81,6 +97,10 @@ PROPERTIES
Taste::APLC_Binding => (reference (taps)) APPLIES TO IV_processTC;
Taste::APLC_Binding => (reference (taps)) APPLIES TO IV_sendTM;
Taste::APLC_Binding => (reference (taps)) APPLIES TO IV_st01_routing;
Taste::APLC_Binding => (reference (taps)) APPLIES TO IV_acceptance_cpdu1;
Taste::APLC_Binding => (reference (taps)) APPLIES TO IV_cpdu1;
Taste::APLC_Binding => (reference (taps)) APPLIES TO IV_execution_cpdu1;
Taste::APLC_Binding => (reference (taps)) APPLIES TO IV_tm_cpdu1;
Actual_Processor_Binding => (reference (x86_linux)) APPLIES TO taps;
END Node1.others;
......
This diff is collapsed.
f0c2096cb698a8ee1c111f7083b8fa80 InterfaceView.aadl
4a9030ea7d96a4ca59e0428cce217886 InterfaceView.aadl
......@@ -25,6 +25,7 @@ PUBLIC
WITH interfaceview::IV::sensor2_AP;
WITH interfaceview::IV::ground_system;
WITH interfaceview::IV;
WITH interfaceview::IV::cpdu1_AP;
WITH ocarina_processors_x86;
WITH deploymentview::DV::Node1;
WITH Taste;
......@@ -60,6 +61,18 @@ SUBCOMPONENTS
IV_st01_routing : SYSTEM interfaceview::IV::st01_routing.others {
Taste::FunctionName => "st01_routing";
};
IV_acceptance_cpdu1 : SYSTEM interfaceview::IV::cpdu1_AP::acceptance_cpdu1.others {
Taste::FunctionName => "acceptance_cpdu1";
};
IV_cpdu1 : SYSTEM interfaceview::IV::cpdu1_AP::cpdu1.others {
Taste::FunctionName => "cpdu1";
};
IV_execution_cpdu1 : SYSTEM interfaceview::IV::cpdu1_AP::execution_cpdu1.others {
Taste::FunctionName => "execution_cpdu1";
};
IV_tm_cpdu1 : SYSTEM interfaceview::IV::cpdu1_AP::tm_cpdu1.others {
Taste::FunctionName => "tm_cpdu1";
};
taps : PROCESS deploymentview::DV::Node1::taps.others {
Taste::coordinates => "80770 67036 174706 102404";
Deployment::Port_Number => 0;
......@@ -76,6 +89,10 @@ PROPERTIES
Taste::APLC_Binding => (reference (taps)) APPLIES TO IV_processTC;
Taste::APLC_Binding => (reference (taps)) APPLIES TO IV_sendTM;
Taste::APLC_Binding => (reference (taps)) APPLIES TO IV_st01_routing;
Taste::APLC_Binding => (reference (taps)) APPLIES TO IV_acceptance_cpdu1;
Taste::APLC_Binding => (reference (taps)) APPLIES TO IV_cpdu1;
Taste::APLC_Binding => (reference (taps)) APPLIES TO IV_execution_cpdu1;
Taste::APLC_Binding => (reference (taps)) APPLIES TO IV_tm_cpdu1;
Actual_Processor_Binding => (reference (x86_linux)) APPLIES TO taps;
END Node1.others;
......
This diff is collapsed.
Datamodel DEFINITIONS ::= BEGIN
-- ./dataview-uniq.asn
TYPE8b_ID ::= INTEGER (0 .. 255)
-- ./dataview-uniq.asn
SEQ_COUNT ::= INTEGER (0 .. 16383)
-- ./dataview-uniq.asn
APID ::= ENUMERATED {
time_rep_AP(0),
ground_AP(1),
routing_AP(2),
sensor1_AP(3),
sensor2_AP(4),
cpdu1_AP(5),
cpdu2_AP(6),
hk_report_AP(7),
params_statistics_AP(8)
}
-- ./dataview-uniq.asn
APUserID ::= ENUMERATED {
ground_User(1),
sc_routingUser(2),
sc_sensorA_User(3),
sc_sensorB_User(4),
sc_cpdu_User(5)
}
-- ./dataview-uniq.asn
On_off_dev_addr ::= ENUMERATED {
onAddr(61136),
offAddr(61140),
coldResetAddr(61144),
warmResetAddr(61148),
testAddr(61149)
}
-- ./dataview-uniq.asn
InstructionCounter ::= INTEGER (1 .. 4)
-- ./dataview-uniq.asn
TC_2_1 ::= SEQUENCE (SIZE (1 .. 4)) OF On_off_dev_addr
-- ./dataview-uniq.asn
CPDU_output_line_ID ::= INTEGER (0 .. 1)
-- ./dataview-uniq.asn
CPDU_Ids ::= ENUMERATED {
cpdu_id_1(0),
cpdu_id_2(1)
}
-- ./dataview-uniq.asn
Pulse_Instr_Instance ::= SEQUENCE {
output_line_id CPDU_output_line_ID,
duration_exp_value Pulse_Instr_Instance_duration_exp_value
}
-- ./dataview-uniq.asn
Index_CPDU_Cmd ::= INTEGER (1 .. 2)
-- ./dataview-uniq.asn
CPDU_Cmd ::= SEQUENCE {
cpdu_id CPDU_Ids OPTIONAL,
cmd_pulse_instr CPDU_Cmd_cmd_pulse_instr
}
-- ./dataview-uniq.asn
TC_2_4 ::= SEQUENCE (SIZE (1 .. 2)) OF CPDU_Cmd
-- ./dataview-uniq.asn
TCs ::= CHOICE {
tc2_1 TC_2_1,
tc2_4 TC_2_4
}
-- ./dataview-uniq.asn
Telecommand ::= SEQUENCE {
dest_apid APID,
sequence_count SEQ_COUNT,
packet_length Telecommand_packet_length,
secondary_header Telecommand_secondary_header,
application_data TCs,
packet_error Telecommand_packet_error
}
-- ./dataview-uniq.asn
Start_Exec_failure_codes ::= ENUMERATED {
noFailure(0),
startExecFailed(1)
}
-- ./dataview-uniq.asn
Progress_Exec_failure_codes ::= ENUMERATED {
noFailure(0),
progresExecFailed(1)
}
-- ./dataview-uniq.asn
Completion_Exec_failure_codes ::= ENUMERATED {
noFailure(0),
completionExecFailed(1)
}
-- ./dataview-uniq.asn
Start_Execution_Notification ::= SEQUENCE {
startExec BOOLEAN,
failureCode Start_Exec_failure_codes,
failureData Start_Execution_Notification_failureData
}
-- ./dataview-uniq.asn
Progress_Execution_Notification ::= SEQUENCE {
step InstructionCounter,
progressExec BOOLEAN,
failureCode Progress_Exec_failure_codes,
failureData Progress_Execution_Notification_failureData
}
-- ./dataview-uniq.asn
Completion_Execution_Notification ::= SEQUENCE {
completionExec BOOLEAN,
failureCode Completion_Exec_failure_codes,
failureData Completion_Execution_Notification_failureData
}
-- ./dataview-uniq.asn
Request_ID_ACK ::= SEQUENCE {
requestID Request_ID_inst,
ack_successful_completion BOOLEAN,
ack_successful_progress BOOLEAN,
ack_successful_start BOOLEAN
}
-- ./dataview-uniq.asn
Request_ID_inst ::= SEQUENCE {
source_apid APID,
sequence_count SEQ_COUNT
}
-- ./dataview-uniq.asn
TM_1_2_failure_codes ::= ENUMERATED {
reqIntegrityFailure(0),
serviceNotAvailable(1),
wrongRequestType(2)
}
-- ./dataview-uniq.asn
TM_1_10_failure_codes ::= ENUMERATED {
reqIntegrityFailure(0),
noDestinationFound(1),
destinationNotReady(2)
}
-- ./dataview-uniq.asn
TM_1_2_failure_data ::= SEQUENCE {
tm_1_2_failure_data_inst TM_1_2_failure_data_tm_1_2_failure_data_inst
}
-- ./dataview-uniq.asn
TM_1_10_failure_data ::= SEQUENCE {
tm_1_10_failure_data_inst TM_1_10_failure_data_tm_1_10_failure_data_inst
}
-- ./dataview-uniq.asn
Failure_Notice_tm_1_2 ::= SEQUENCE {
code TM_1_2_failure_codes,
data TM_1_2_failure_data
}
-- ./dataview-uniq.asn
Failure_Notice_tm_1_4 ::= SEQUENCE {
code Start_Exec_failure_codes,
data TM_1_10_failure_data
}
-- ./dataview-uniq.asn
Failure_Notice_tm_1_6 ::= SEQUENCE {
code Progress_Exec_failure_codes,
data TM_1_10_failure_data
}
-- ./dataview-uniq.asn
Failure_Notice_tm_1_8 ::= SEQUENCE {
code Completion_Exec_failure_codes,
data TM_1_10_failure_data
}
-- ./dataview-uniq.asn
Failure_Notice_tm_1_10 ::= SEQUENCE {
code TM_1_10_failure_codes,
data TM_1_10_failure_data
}
-- ./dataview-uniq.asn
TM_1_1 ::= SEQUENCE {
source_apid APID,
sequence_count SEQ_COUNT
}
-- ./dataview-uniq.asn
TM_1_2 ::= SEQUENCE {
req_ID Request_ID_inst,
fail_Notice Failure_Notice_tm_1_2
}
-- ./dataview-uniq.asn
TM_1_3 ::= SEQUENCE {
source_apid APID,
sequence_count SEQ_COUNT
}
-- ./dataview-uniq.asn
TM_1_4 ::= SEQUENCE {
req_ID Request_ID_inst,
fail_Notice Failure_Notice_tm_1_4
}
-- ./dataview-uniq.asn
TM_1_5 ::= SEQUENCE {
req_ID TM_1_5_req_ID,
step InstructionCounter
}
-- ./dataview-uniq.asn
TM_1_6 ::= SEQUENCE {
req_ID TM_1_6_req_ID,
step InstructionCounter,
failureNotice Failure_Notice_tm_1_6
}
-- ./dataview-uniq.asn
TM_1_7 ::= SEQUENCE {
source_apid APID,
sequence_count SEQ_COUNT
}
-- ./dataview-uniq.asn
TM_1_8 ::= SEQUENCE {
req_ID Request_ID_inst,
fail_Notice Failure_Notice_tm_1_8
}
-- ./dataview-uniq.asn
TM_1_10 ::= SEQUENCE {
req_ID Request_ID_inst,
fail_Notice Failure_Notice_tm_1_10
}
-- ./dataview-uniq.asn
TMs ::= CHOICE {
tm1_1 TM_1_1,
tm1_2 TM_1_2,
tm1_3 TM_1_3,
tm1_4 TM_1_4,
tm1_5 TM_1_5,
tm1_6 TM_1_6,
tm1_7 TM_1_7,
tm1_8 TM_1_8,
tm1_10 TM_1_10
}
-- ./dataview-uniq.asn
TM ::= SEQUENCE {
source_apid APID,
sequence_count TM_sequence_count,
packet_length TM_packet_length,
secondary_header TM_secondary_header,
source_data TMs,
packet_error TM_packet_error
}
-- ./dataview-uniq.asn
TM_packet_error ::= INTEGER (0 .. 65535)
-- ./dataview-uniq.asn
TM_secondary_header ::= SEQUENCE {
time_reference_status TM_secondary_header_time_reference_status,
message_type_counter TM_secondary_header_message_type_counter,
destination_id APUserID
}
-- ./dataview-uniq.asn
TM_packet_length ::= INTEGER (0 .. 65535)
-- ./dataview-uniq.asn
TM_sequence_count ::= INTEGER (0 .. 16383)
-- ./dataview-uniq.asn
TM_1_6_req_ID ::= SEQUENCE {
source_apid APID,
sequence_count SEQ_COUNT
}
-- ./dataview-uniq.asn
TM_1_5_req_ID ::= SEQUENCE {
source_apid APID,
sequence_count SEQ_COUNT
}
-- ./dataview-uniq.asn
TM_1_10_failure_data_tm_1_10_failure_data_inst ::= INTEGER (0 .. 255)
-- ./dataview-uniq.asn
TM_1_2_failure_data_tm_1_2_failure_data_inst ::= INTEGER (0 .. 255)
-- ./dataview-uniq.asn
Completion_Execution_Notification_failureData ::= INTEGER (0 .. 255)
-- ./dataview-uniq.asn
Progress_Execution_Notification_failureData ::= INTEGER (0 .. 255)
-- ./dataview-uniq.asn
Start_Execution_Notification_failureData ::= INTEGER (0 .. 255)
-- ./dataview-uniq.asn
Telecommand_packet_error ::= INTEGER (0 .. 65535)
-- ./dataview-uniq.asn
Telecommand_secondary_header ::= SEQUENCE {
ack_successful_completion BOOLEAN,
ack_successful_progress BOOLEAN,
ack_successful_start BOOLEAN,
ack_successful_acceptance BOOLEAN,
source_id APUserID
}
-- ./dataview-uniq.asn
Telecommand_packet_length ::= INTEGER (0 .. 65535)
-- ./dataview-uniq.asn
CPDU_Cmd_cmd_pulse_instr ::= SEQUENCE (SIZE (1 .. 12)) OF Pulse_Instr_Instance
-- ./dataview-uniq.asn
Pulse_Instr_Instance_duration_exp_value ::= INTEGER (0 .. 7)
-- ./dataview-uniq.asn
TM_secondary_header_message_type_counter ::= INTEGER (0 .. 65535)
-- ./dataview-uniq.asn
TM_secondary_header_time_reference_status ::= INTEGER (0 .. 15)
-- ./dataview-uniq.asn
Test_TC ::= SEQUENCE {
identifierRequest T_UInt32,
cpduID T_UInt8,
crc BOOLEAN
}
-- ./dataview-uniq.asn
Test_TM ::= SEQUENCE {
failureCodes Test_failureCodes,
sourceID T_UInt32
}
-- ./dataview-uniq.asn
Test_failureCodes ::= ENUMERATED {
crcFailure(0),
destinationNotFound(1),
destinationNotReady(2)
}
-- ./dataview-uniq.asn
Test_Taps_Parameters ::= CHOICE {
testST01Routing ST01RoutingTestParams,
testST01Acceptance ST01AcceptanceTestParams,
testST01Execution ST01ExecutionTestParams
}
-- ./dataview-uniq.asn
ST01AcceptanceTestParams ::= SEQUENCE {
crcTest BOOLEAN,
serviceAvailableTest BOOLEAN,
ready BOOLEAN
}
-- ./dataview-uniq.asn
ST01RoutingTestParams ::= SEQUENCE {
crcTest BOOLEAN
}
-- ./dataview-uniq.asn
ST01ExecutionTestParams ::= SEQUENCE {
execStart BOOLEAN,
execProgress BOOLEAN,
execCompletion BOOLEAN
}
-- ./dataview-uniq.asn
MyInteger ::= T_UInt8
-- ./dataview-uniq.asn
MyReal ::= REAL (0.00000000000000000000E+000 .. 1.00000000000000000000E+003)
-- ./dataview-uniq.asn
MyBool ::= BOOLEAN
-- ./dataview-uniq.asn
MyEnum ::= ENUMERATED {
hello(0),
world(1),
howareyou(2)
}
-- ./dataview-uniq.asn
MySeq ::= SEQUENCE {
input_data MyInteger,
output_data MyInteger,
validity MySeq_validity
}
-- ./dataview-uniq.asn
MyChoice ::= CHOICE {
a BOOLEAN,
b MySeq
}
-- ./dataview-uniq.asn
MySeqOf ::= SEQUENCE (SIZE (2 .. 2)) OF MyEnum
-- ./dataview-uniq.asn
MyOctStr ::= OCTET STRING (SIZE (3 .. 3))
-- ./dataview-uniq.asn
OutputString ::= OCTET STRING (SIZE (0 .. 100))
-- ./dataview-uniq.asn
MySeq_validity ::= ENUMERATED {
valid(0),
invalid(1)
}
-- ./dataview-uniq.asn
T_Int32 ::= INTEGER (-2147483648 .. 2147483647)
-- ./dataview-uniq.asn
T_UInt32 ::= INTEGER (0 .. 4294967295)
-- ./dataview-uniq.asn
T_Int8 ::= INTEGER (-128 .. 127)
-- ./dataview-uniq.asn
T_UInt8 ::= INTEGER (0 .. 255)
-- ./dataview-uniq.asn
T_Boolean ::= BOOLEAN
END
This diff is collapsed.
This diff is collapsed.
-- This file was generated automatically: DO NOT MODIFY IT !
with PUS_Implicit_Knowledge;
use PUS_Implicit_Knowledge;
with Distribute_On_Off_Device_Commands_Generic;
use Distribute_On_Off_Device_Commands_Generic;
with Distribute_CPDU_Commands_Generic;
use Distribute_CPDU_Commands_Generic;
with Request_Verification_Reports;
use Request_Verification_Reports;
with Taps;
use Taps;
with TASTE_Dataview;
use TASTE_Dataview;
with TASTE_BasicTypes;
use TASTE_BasicTypes;
with adaasn1rtl;
use adaasn1rtl;
package acceptance_cpdu1 is
-- Provided interface "tc_cpdu1"
procedure tc_cpdu1(TC: access asn1SccTelecommand);
pragma Export(C, tc_cpdu1, "acceptance_cpdu1_tc_cpdu1");
-- Provided interface "test_cpdu1"
procedure test_cpdu1(testStr: access asn1SccTest_Taps_Parameters);
pragma Export(C, test_cpdu1, "acceptance_cpdu1_test_cpdu1");
-- Required interface "tc24"
procedure RItc24(tc2_4: access asn1SccTC_2_4);
pragma import(C, RItc24, "acceptance_cpdu1_RI_tc24");
-- Required interface "ready_cpdu1"
procedure RIready_cpdu1(readyAP: access asn1SccMyBool);
pragma import(C, RIready_cpdu1, "acceptance_cpdu1_RI_ready_cpdu1");
-- Required interface "tm"
procedure RItm(tm: access asn1SccTM);
pragma import(C, RItm, "acceptance_cpdu1_RI_tm");
-- Required interface "reqID"
procedure RIreqID(reqId: access asn1SccRequest_ID_ACK);
pragma import(C, RIreqID, "acceptance_cpdu1_RI_reqID");
end acceptance_cpdu1;
\ No newline at end of file
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.