From 426795c6beccda85f90e752cf77bcbd3181127b5 Mon Sep 17 00:00:00 2001 From: Florian Pose <fp@igh-essen.com> Date: Wed, 12 Sep 2007 13:20:59 +0000 Subject: [PATCH] Added FSM graph for master state machine. --- documentation/graphs/Makefile | 2 +- documentation/graphs/fsm_master.dot | 79 +++++++++++++++++++++++++++++ 2 files changed, 80 insertions(+), 1 deletion(-) create mode 100644 documentation/graphs/fsm_master.dot diff --git a/documentation/graphs/Makefile b/documentation/graphs/Makefile index 9e6a4df6..b58acc10 100644 --- a/documentation/graphs/Makefile +++ b/documentation/graphs/Makefile @@ -4,7 +4,7 @@ # #----------------------------------------------------------------------------- -GRAPHS := fsm_slave_conf.ps fsm_pdo_mapping.ps +GRAPHS := fsm_slave_conf.ps fsm_pdo_mapping.ps fsm_master.ps all: $(GRAPHS) diff --git a/documentation/graphs/fsm_master.dot b/documentation/graphs/fsm_master.dot new file mode 100644 index 00000000..ebdc4796 --- /dev/null +++ b/documentation/graphs/fsm_master.dot @@ -0,0 +1,79 @@ +digraph master { + size="7,9" + center=1 + ratio=fill + + action_process_eeprom [shape=point,label=""] + action_process_sdo [shape=point,label=""] + action_configure [shape=point,label=""] + action_next_slave_state [shape=point,label=""] + action_process_states [shape=point,label=""] + action_addresses [shape=point,label=""] + + start -> broadcast [weight=10] + + //broadcast -> error + broadcast -> end + broadcast -> clear_addresses + broadcast -> read_states [weight=10] + + action_process_eeprom -> write_eeprom + + action_process_sdo -> sdo_request + + action_configure -> configure_slave + + action_next_slave_state -> read_states + action_next_slave_state -> validate_vendor + action_next_slave_state -> action_process_states + + action_process_states -> action_configure + action_process_states -> action_process_sdo + action_process_states -> action_process_eeprom + action_process_states -> sdodict + action_process_states -> end + + //read_states -> error + read_states -> action_next_slave_state + read_states -> acknowledge + + //acknowledge -> error + acknowledge -> action_next_slave_state + + //validate_vendor -> error + validate_vendor -> validate_product + + action_addresses -> end + action_addresses -> rewrite_addresses + + //validate_product -> error + validate_product -> validate_vendor + validate_product -> action_addresses + + //rewrite_addresses -> error + rewrite_addresses -> end + rewrite_addresses -> action_addresses + + //clear_addresses -> error + clear_addresses -> scan_slaves + + scan_slaves -> scan_slaves + scan_slaves -> end + + configure_slave -> action_configure + configure_slave -> end + + //write_eeprom -> error + write_eeprom -> end + + //sdodict -> error + sdodict -> end + + //sdo_request -> error + sdo_request -> action_process_sdo + sdo_request -> end + + //error -> start + + //end -> start +} -- GitLab