From 7b3f19fdd6aa46c9c2f79022785f09954504b679 Mon Sep 17 00:00:00 2001 From: Othmar Gsenger Date: Wed, 6 Feb 2013 19:33:44 +0000 Subject: added state machine graph git-svn-id: https://svn.spreadspace.org/avr/trunk@132 aa12f405-d877-488e-9caf-2d797e2a1cc7 --- usb-i2c-sl018/statemachine.dot | 45 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 usb-i2c-sl018/statemachine.dot diff --git a/usb-i2c-sl018/statemachine.dot b/usb-i2c-sl018/statemachine.dot new file mode 100644 index 0000000..cff0df1 --- /dev/null +++ b/usb-i2c-sl018/statemachine.dot @@ -0,0 +1,45 @@ +digraph G { + reset [shape=box]; + toggle [shape=diamond]; + btn_toggle [shape=diamond]; + cmd_toggle [shape=diamond]; + card [shape=diamond]; + card ->toggle; + btn_toggle ->toggle; + cmd_toggle ->toggle; + all_states [shape=box]; + opened [shape=box]; + closed [shape=box]; + opening [shape=box]; + closing [shape=box]; + timeout_after_open [shape=box]; + timeout_after_close [shape=box]; + manual_movement [shape=box]; + error [shape=box]; + reset -> closed [label="limit_closed"]; + reset -> closing [label="limit_none"]; + reset -> opened [label="limit_opened"]; + error -> closed [label="limit_closed"]; + error -> opened [label="limit_opened"]; + error -> manual_movement [label="limit_none"]; + manual_movement -> opening [label="cmd_open"]; + manual_movement -> closing [label="cmd_close"]; + manual_movement -> closing [label="toggle"]; + opened -> closing [label="cmd_close"]; + opened -> closing [label="toggle"]; + closed -> opening [label="cmd_open"]; + closed -> opening [label="toggle"]; + opening -> opened [label="limit_open"]; + closing -> closed [label="limit_close"]; + closing -> timeout_after_close [label="timeout"]; + opening -> timeout_after_open [label="timeout"]; + timeout_after_open -> closing [label="cmd_close"]; + timeout_after_open -> closing [label="toggle"]; + timeout_after_open -> opened [label="limit_open"]; + timeout_after_open -> closed [label="limit_close"]; + timeout_after_close -> opening [label="cmd_open"]; + timeout_after_close -> opening [label="toggle"]; + timeout_after_close -> opened [label="limit_open"]; + timeout_after_close -> closed [label="limit_close"]; + all_states -> error [label="limit_both"]; +} -- cgit v1.2.3