documentation/graphs/fsm_master.dot
author Florian Pose <fp@igh-essen.com>
Fri, 22 Feb 2008 17:30:50 +0000
changeset 819 76fe396bdeea
parent 803 c9e147567924
child 831 ded9519c8d6e
permissions -rw-r--r--
Re-ordered TODO.
803
c9e147567924 Updated properties and keywords for dot files.
Florian Pose <fp@igh-essen.com>
parents: 718
diff changeset
     1
c9e147567924 Updated properties and keywords for dot files.
Florian Pose <fp@igh-essen.com>
parents: 718
diff changeset
     2
/* $Id$ */
c9e147567924 Updated properties and keywords for dot files.
Florian Pose <fp@igh-essen.com>
parents: 718
diff changeset
     3
718
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
     4
digraph master {
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
     5
    size="7,9"
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
     6
    center=1
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
     7
	ratio=fill
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
     8
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
     9
    action_process_eeprom [shape=point,label=""]
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    10
    action_process_sdo [shape=point,label=""]
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    11
    action_configure [shape=point,label=""]
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    12
    action_next_slave_state [shape=point,label=""]
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    13
    action_process_states [shape=point,label=""]
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    14
    action_addresses [shape=point,label=""]
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    15
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    16
    start -> broadcast [weight=10]
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    17
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    18
    //broadcast -> error
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    19
    broadcast -> end
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    20
    broadcast -> clear_addresses
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    21
    broadcast -> read_states [weight=10]
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    22
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    23
    action_process_eeprom -> write_eeprom
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    24
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    25
    action_process_sdo -> sdo_request
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    26
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    27
    action_configure -> configure_slave
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    28
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    29
    action_next_slave_state -> read_states
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    30
    action_next_slave_state -> validate_vendor
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    31
    action_next_slave_state -> action_process_states
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    32
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    33
    action_process_states -> action_configure
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    34
    action_process_states -> action_process_sdo
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    35
    action_process_states -> action_process_eeprom
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    36
    action_process_states -> sdodict
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    37
    action_process_states -> end
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    38
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    39
    //read_states -> error
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    40
    read_states -> action_next_slave_state
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    41
    read_states -> acknowledge
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    42
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    43
    //acknowledge -> error
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    44
    acknowledge -> action_next_slave_state
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    45
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    46
    //validate_vendor -> error
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    47
    validate_vendor -> validate_product
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    48
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    49
    action_addresses -> end
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    50
    action_addresses -> rewrite_addresses
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    51
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    52
    //validate_product -> error
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    53
    validate_product -> validate_vendor
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    54
    validate_product -> action_addresses
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    55
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    56
    //rewrite_addresses -> error
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    57
    rewrite_addresses -> end
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    58
    rewrite_addresses -> action_addresses
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    59
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    60
    //clear_addresses -> error
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    61
    clear_addresses -> scan_slaves
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    62
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    63
    scan_slaves -> scan_slaves
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    64
    scan_slaves -> end
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    65
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    66
    configure_slave -> action_configure
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    67
    configure_slave -> end
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    68
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    69
    //write_eeprom -> error
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    70
    write_eeprom -> end
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    71
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    72
    //sdodict -> error
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    73
    sdodict -> end
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    74
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    75
    //sdo_request -> error
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    76
    sdo_request -> action_process_sdo
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    77
    sdo_request -> end
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    78
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    79
    //error -> start
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    80
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    81
    //end -> start
80df6930e7e6 Added FSM graph for master state machine.
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    82
}