60 lines
3.1 KiB
ReStructuredText
60 lines
3.1 KiB
ReStructuredText
MCPWM
|
|
=====
|
|
|
|
Overview
|
|
--------
|
|
|
|
ESP32 has two MCPWM units which can be used to control different motors.
|
|
|
|
Block Diagram
|
|
-------------
|
|
|
|
The block diagram of MCPWM unit is as shown.
|
|
|
|
::
|
|
|
|
__________________________________________________________________________
|
|
| SYNCSIG FAULT SIG CAPTURE SIG |
|
|
| 0 1 2 0 1 2 0 1 2 |
|
|
|___________________________________________________________________ G |
|
|
INTERRUPTS<-----+ | | | | | | | | | | P |
|
|
| | | | | | | | | | | I |
|
|
________|_|___|___|_____________|___|___|_________|___|___|_________ | O |
|
|
| | | | | | | | | | | | |
|
|
| | | | | | | | | | | | M |
|
|
| | | | __v___v___v__ __v___v___v__ | | A |
|
|
| | | | | | | | | | T |
|
|
| | | | | FAULT | | CAPTURE | | | R |
|
|
| | | | | HANDLER | | | | | I |
|
|
| | | | | | |___________| | | X |
|
|
| | | | |___________| | | |
|
|
| | | | | | |
|
|
| ____v___v___v____ ____________________ | | |
|
|
| | +---------+ | | +------------+ |--------->|PWM0A|
|
|
| | | Timer 0 | | | | Operator 0 | | | | |
|
|
| | +---------+ | | +------------+ |--------->|PWM0B|
|
|
| | | | | | | |
|
|
| | +---------+ | | +------------+ |--------->|PWM1A|
|
|
| | | Timer 1 | |------------------->| | Operator 1 | | | | |
|
|
| | +---------+ | | +------------+ |--------->|PWM1B|
|
|
| | | | | | | |
|
|
| | +---------+ | | +------------+ |--------->|PWM2A|
|
|
| | | Timer 2 | | | | Operator 2 | | | | |
|
|
| | +---------+ | | +------------+ |--------->|PWM2B|
|
|
| |_______________| |__________________| | |_____|
|
|
| |
|
|
| MCPWM-UNIT 0/1 |
|
|
|___________________________________________________________________|
|
|
|
|
|
|
Application Example
|
|
-------------------
|
|
|
|
Examples of using MCPWM for motor control: :example:`peripherals/mcpwm`.
|
|
|
|
API Reference
|
|
-------------
|
|
|
|
.. include:: /_build/inc/mcpwm.inc
|
|
|
|
|