esp-idf/docs/_static/diagrams/mcpwm/mcpwm_overview.diag

60 lines
1.9 KiB
Plaintext

blockdiag mcpwm_overview {
default_fontsize = 18;
node_width = 130;
node_height = 100;
default_group_color = lightgrey;
mcpwm_timers [label = "MCPWM\nTimer", stacked];
timer_sync [label = "Timer Sync", stacked];
timer_sync <-> mcpwm_timers;
mcpwm_capture_timer [label = "MCPWM\nCapture Timer"];
mcpwm_capture_channels [label = "MCPWM\nCapture Chan", stacked];
mcpwm_capture_gpio [label = "Cap\nGPIO", shape = minidiamond];
mcpwm_capture_timer -> mcpwm_capture_channels;
mcpwm_capture_channels <- mcpwm_capture_gpio;
timer_sync -> mcpwm_capture_timer;
gpio_sync [label = "Sync\nGPIO", shape = minidiamond];
gpio_sync -> mcpwm_timers;
gpio_sync -> mcpwm_capture_timer;
mcpwm_compares [label = "MCPWM\nComparators", stacked];
mcpwm_generators [label = "MCPWM\nGenerators", stacked];
mcpwm_dead_time [label = "Dead Time"];
mcpwm_carrier [label = "Carrier\nModulation"];
mcpwm_brake [label = "Brake"];
pwma [label = "PWM_A", shape = minidiamond];
pwmb [label = "PWM_B", shape = minidiamond];
stub [shape = none];
mcpwm_timers -> mcpwm_generators;
mcpwm_timers -> mcpwm_compares;
mcpwm_compares -> mcpwm_generators [folded];
mcpwm_generators -> mcpwm_dead_time;
mcpwm_dead_time -> mcpwm_carrier;
mcpwm_carrier -> mcpwm_brake;
mcpwm_brake -> stub;
stub -> pwma, pwmb;
mcpwm_generators -> mcpwm_carrier;
mcpwm_generators -> mcpwm_brake;
mcpwm_generators -> stub;
gpio_faults [label = "Fault\nGPIO", shape = minidiamond];
mcpwm_brake <- gpio_faults [folded];
group {
label = "MCPWM Operators";
mcpwm_compares, mcpwm_generators, mcpwm_dead_time, mcpwm_carrier, mcpwm_brake;
}
group {
label = "MCPWM Capture";
mcpwm_capture_timer, mcpwm_capture_channels, mcpwm_capture_gpio;
}
group {
label = "MCPWM Sync";
gpio_sync, timer_sync;
}
}