mirror of
https://gitlab.com/etherlab.org/ethercat.git
synced 2026-09-21 09:33:47 +08:00
Major Pdo configuration change: Read mapping of unknown Pdos during
configuration.
This commit is contained in:
@@ -5,10 +5,11 @@
|
||||
#-----------------------------------------------------------------------------
|
||||
|
||||
GRAPHS := \
|
||||
fsm_coe_map \
|
||||
fsm_master \
|
||||
fsm_pdo_assign \
|
||||
fsm_pdo_mapping \
|
||||
fsm_pdo_conf \
|
||||
fsm_pdo_read \
|
||||
fsm_pdo_entry_conf \
|
||||
fsm_pdo_entry_read \
|
||||
fsm_slave_conf \
|
||||
fsm_slave_scan
|
||||
|
||||
|
||||
@@ -1,33 +0,0 @@
|
||||
|
||||
/* $Id$ */
|
||||
|
||||
digraph readpdomapping {
|
||||
size="7,9"
|
||||
center=1
|
||||
ratio=fill
|
||||
|
||||
next_sync [shape=point,label=""]
|
||||
next_pdo [shape=point,label=""]
|
||||
next_pdo_entry [shape=point,label=""]
|
||||
|
||||
start -> next_sync [label="first SM"]
|
||||
|
||||
next_sync -> pdo_count [weight=5]
|
||||
next_sync -> end
|
||||
|
||||
pdo_count -> next_pdo [weight=5]
|
||||
|
||||
next_pdo -> pdo [weight=5]
|
||||
next_pdo -> next_sync
|
||||
|
||||
pdo -> pdo_entry_count [weight=5]
|
||||
|
||||
pdo_entry_count -> next_pdo_entry [weight=10]
|
||||
|
||||
next_pdo_entry -> pdo_entry [weight=5]
|
||||
next_pdo_entry -> next_pdo
|
||||
|
||||
pdo_entry -> next_pdo_entry
|
||||
|
||||
end
|
||||
}
|
||||
@@ -1,19 +0,0 @@
|
||||
|
||||
/* $Id$ */
|
||||
|
||||
digraph pdomapping {
|
||||
size="7,9"
|
||||
center=1
|
||||
ratio=fill
|
||||
|
||||
next_sync [shape=point,label=""]
|
||||
|
||||
start -> next_sync [label="First SM"]
|
||||
next_sync -> end [label="No more SMs"]
|
||||
next_sync -> zero_count [label="Next SM"]
|
||||
zero_count -> next_sync [label="No Pdos"]
|
||||
zero_count -> add_pdo [label="Map first Pdo", weight=5]
|
||||
add_pdo -> add_pdo [label="Map next Pdo"]
|
||||
add_pdo -> pdo_count [label="No more Pdos", weight=5]
|
||||
pdo_count -> next_sync
|
||||
}
|
||||
@@ -0,0 +1,54 @@
|
||||
|
||||
/* $Id$ */
|
||||
|
||||
digraph pdo_conf {
|
||||
size="7,9"
|
||||
center=1
|
||||
ratio=fill
|
||||
|
||||
start [fontname="Helvetica"]
|
||||
start -> action_next_sync [fontname="Helvetica",label="First SM",weight=10]
|
||||
start -> end [fontname="Helvetica",label="No config"]
|
||||
|
||||
action_next_sync [shape=point,label=""]
|
||||
action_next_sync -> action_check_assignment [fontname="Helvetica",label="No Pdos"]
|
||||
action_next_sync -> action_pdo_mapping [fontname="Helvetica",label="First Pdo",weight=10]
|
||||
action_next_sync -> end [fontname="Helvetica",label="No more SMs"]
|
||||
|
||||
action_pdo_mapping [shape=point,label=""]
|
||||
action_pdo_mapping -> read_mapping [fontname="Helvetica",label="Unknown"]
|
||||
action_pdo_mapping -> action_check_mapping [weight=10]
|
||||
|
||||
read_mapping [fontname="Helvetica"]
|
||||
read_mapping -> action_check_mapping
|
||||
|
||||
action_check_mapping [shape=point,label=""]
|
||||
action_check_mapping -> action_next_pdo_mapping
|
||||
action_check_mapping -> mapping [weight=10]
|
||||
|
||||
mapping [fontname="Helvetica"]
|
||||
mapping -> action_next_pdo_mapping [weight=10]
|
||||
|
||||
action_next_pdo_mapping [shape=point,label=""]
|
||||
action_next_pdo_mapping -> action_check_assignment [weight=10]
|
||||
action_next_pdo_mapping -> action_pdo_mapping
|
||||
[fontname="Helvetica",label="Next Pdo"]
|
||||
|
||||
action_check_assignment [shape=point,label=""]
|
||||
action_check_assignment -> action_next_sync [fontname="Helvetica",label="Assign ok"]
|
||||
action_check_assignment -> zero_pdo_count [weight=10]
|
||||
|
||||
zero_pdo_count [fontname="Helvetica"]
|
||||
zero_pdo_count -> action_next_sync [fontname="Helvetica",label="No Pdos"]
|
||||
zero_pdo_count -> action_assign_pdo [fontname="Helvetica",label="First Pdo", weight=10]
|
||||
|
||||
action_assign_pdo [shape=point,label=""]
|
||||
action_assign_pdo -> assign_pdo [weight=10]
|
||||
|
||||
assign_pdo [fontname="Helvetica"]
|
||||
assign_pdo -> set_pdo_count [fontname="Helvetica",label="No more Pdos", weight=10]
|
||||
assign_pdo -> action_assign_pdo [fontname="Helvetica",label="Next Pdo"]
|
||||
|
||||
set_pdo_count [fontname="Helvetica"]
|
||||
set_pdo_count -> action_next_sync
|
||||
}
|
||||
@@ -0,0 +1,28 @@
|
||||
|
||||
/* $Id$ */
|
||||
|
||||
digraph pdo_entry_conf {
|
||||
size="7,9"
|
||||
center=1
|
||||
ratio=fill
|
||||
|
||||
start [fontname="Helvetica"]
|
||||
start -> zero_entry_count [weight=10]
|
||||
|
||||
zero_entry_count [fontname="Helvetica"]
|
||||
zero_entry_count -> end [fontname="Helvetica",label="No Entries"]
|
||||
zero_entry_count -> action_map [fontname="Helvetica",label="Add first entry", weight=10]
|
||||
|
||||
action_map [shape=point,label=""]
|
||||
action_map -> map_entry [weight=10]
|
||||
|
||||
map_entry [fontname="Helvetica"]
|
||||
map_entry -> action_map [fontname="Helvetica",label="Next entry"]
|
||||
map_entry -> set_entry_count [fontname="Helvetica",label="No more Entries", weight=10]
|
||||
|
||||
set_entry_count [fontname="Helvetica"]
|
||||
set_entry_count -> end [weight=10]
|
||||
|
||||
end [fontname="Helvetica"]
|
||||
end
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
|
||||
/* $Id$ */
|
||||
|
||||
digraph pdo_entry_read {
|
||||
size="7,9"
|
||||
center=1
|
||||
ratio=fill
|
||||
|
||||
start [fontname="Helvetica"]
|
||||
start -> count [weight=5]
|
||||
|
||||
count [fontname="Helvetica"]
|
||||
count -> action_next [weight=5]
|
||||
|
||||
action_next [shape=point,label=""]
|
||||
action_next -> pdo_entry [fontname="Helvetica", label="Next entry", weight=5]
|
||||
action_next -> end [fontname="Helvetica", label="No more entries"]
|
||||
|
||||
pdo_entry [fontname="Helvetica"]
|
||||
pdo_entry -> action_next
|
||||
|
||||
end [fontname="Helvetica"]
|
||||
}
|
||||
@@ -1,19 +0,0 @@
|
||||
|
||||
/* $Id$ */
|
||||
|
||||
digraph pdoconfig {
|
||||
size="7,9"
|
||||
center=1
|
||||
ratio=fill
|
||||
|
||||
next_pdo [shape=point,label=""]
|
||||
|
||||
start -> next_pdo [label="First Pdo"]
|
||||
next_pdo -> end [label="No more Pdos"]
|
||||
next_pdo -> zero_count [label="Next Pdo"]
|
||||
zero_count -> next_pdo [label="No Entries"]
|
||||
zero_count -> add_entry [label="Add first entry", weight=5]
|
||||
add_entry -> add_entry [label="Add next entry"]
|
||||
add_entry -> entry_count [label="No more Entries", weight=5]
|
||||
entry_count -> next_pdo
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
|
||||
/* $Id$ */
|
||||
|
||||
digraph pdo_read {
|
||||
size="7,9"
|
||||
center=1
|
||||
ratio=fill
|
||||
|
||||
start [fontname="Helvetica"]
|
||||
start -> action_next_sync [fontname="Helvetica", label="First SM", weight=5]
|
||||
|
||||
action_next_sync [shape=point,label=""]
|
||||
action_next_sync -> pdo_count [weight=5]
|
||||
action_next_sync -> end
|
||||
|
||||
pdo_count [fontname="Helvetica"]
|
||||
pdo_count -> action_next_pdo [weight=5]
|
||||
|
||||
action_next_pdo [shape=point,label=""]
|
||||
action_next_pdo -> pdo [fontname="Helvetica", label="Next Pdo", weight=5]
|
||||
action_next_pdo -> action_next_sync [fontname="Helvetica", label="No more Pdos"]
|
||||
|
||||
pdo [fontname="Helvetica"]
|
||||
pdo -> pdo_entries [weight=5]
|
||||
|
||||
pdo_entries [fontname="Helvetica"]
|
||||
pdo_entries -> action_next_pdo
|
||||
|
||||
end [fontname="Helvetica"]
|
||||
}
|
||||
@@ -53,17 +53,12 @@ digraph slaveconf {
|
||||
pdo_sync [fontname="Helvetica"]
|
||||
//pdo_sync -> pdo_sync
|
||||
//pdo_sync -> error
|
||||
pdo_sync -> pdo_mapping [weight=10]
|
||||
pdo_sync -> pdo_conf [weight=10]
|
||||
|
||||
pdo_mapping [fontname="Helvetica"]
|
||||
//pdo_mapping -> pdo_mapping
|
||||
//pdo_mapping -> error
|
||||
pdo_mapping -> pdo_assign [weight=10]
|
||||
|
||||
pdo_assign [fontname="Helvetica"]
|
||||
//pdo_assign -> pdo_assign
|
||||
//pdo_assign -> error
|
||||
pdo_assign -> enter_fmmu [weight=10]
|
||||
pdo_conf [fontname="Helvetica"]
|
||||
//pdo_conf -> pdo_conf
|
||||
//pdo_conf -> error
|
||||
pdo_conf -> enter_fmmu [weight=10]
|
||||
|
||||
enter_fmmu [shape=point,label=""]
|
||||
enter_fmmu -> enter_safeop [fontname="Helvetica",label="No FMMUs\nto configure"]
|
||||
|
||||
Reference in New Issue
Block a user