Merge branch 'feature/esp_driver_mcpwm' into 'master'

feat(mcpwm): refactor mcpwm driver into a component

Closes IDF-8379

See merge request espressif/esp-idf!26738
This commit is contained in:
morris
2023-11-13 15:26:56 +08:00
59 changed files with 167 additions and 143 deletions
+9 -9
View File
@@ -89,15 +89,6 @@ INPUT = \
$(PROJECT_PATH)/components/driver/i2s/include/driver/i2s_tdm.h \
$(PROJECT_PATH)/components/driver/i2s/include/driver/i2s_types.h \
$(PROJECT_PATH)/components/driver/ledc/include/driver/ledc.h \
$(PROJECT_PATH)/components/driver/mcpwm/include/driver/mcpwm_cap.h \
$(PROJECT_PATH)/components/driver/mcpwm/include/driver/mcpwm_cmpr.h \
$(PROJECT_PATH)/components/driver/mcpwm/include/driver/mcpwm_etm.h \
$(PROJECT_PATH)/components/driver/mcpwm/include/driver/mcpwm_fault.h \
$(PROJECT_PATH)/components/driver/mcpwm/include/driver/mcpwm_gen.h \
$(PROJECT_PATH)/components/driver/mcpwm/include/driver/mcpwm_oper.h \
$(PROJECT_PATH)/components/driver/mcpwm/include/driver/mcpwm_sync.h \
$(PROJECT_PATH)/components/driver/mcpwm/include/driver/mcpwm_timer.h \
$(PROJECT_PATH)/components/driver/mcpwm/include/driver/mcpwm_types.h \
$(PROJECT_PATH)/components/driver/parlio/include/driver/parlio_tx.h \
$(PROJECT_PATH)/components/driver/parlio/include/driver/parlio_types.h \
$(PROJECT_PATH)/components/driver/rmt/include/driver/rmt_common.h \
@@ -142,6 +133,15 @@ INPUT = \
$(PROJECT_PATH)/components/esp_driver_gptimer/include/driver/gptimer.h \
$(PROJECT_PATH)/components/esp_driver_gptimer/include/driver/gptimer_etm.h \
$(PROJECT_PATH)/components/esp_driver_gptimer/include/driver/gptimer_types.h \
$(PROJECT_PATH)/components/esp_driver_mcpwm/include/driver/mcpwm_cap.h \
$(PROJECT_PATH)/components/esp_driver_mcpwm/include/driver/mcpwm_cmpr.h \
$(PROJECT_PATH)/components/esp_driver_mcpwm/include/driver/mcpwm_etm.h \
$(PROJECT_PATH)/components/esp_driver_mcpwm/include/driver/mcpwm_fault.h \
$(PROJECT_PATH)/components/esp_driver_mcpwm/include/driver/mcpwm_gen.h \
$(PROJECT_PATH)/components/esp_driver_mcpwm/include/driver/mcpwm_oper.h \
$(PROJECT_PATH)/components/esp_driver_mcpwm/include/driver/mcpwm_sync.h \
$(PROJECT_PATH)/components/esp_driver_mcpwm/include/driver/mcpwm_timer.h \
$(PROJECT_PATH)/components/esp_driver_mcpwm/include/driver/mcpwm_types.h \
$(PROJECT_PATH)/components/esp_driver_pcnt/include/driver/pulse_cnt.h \
$(PROJECT_PATH)/components/esp_eth/include/esp_eth_com.h \
$(PROJECT_PATH)/components/esp_eth/include/esp_eth_driver.h \
+1 -1
View File
@@ -1044,7 +1044,7 @@ API Reference
.. include-build-file:: inc/mcpwm_sync.inc
.. include-build-file:: inc/mcpwm_cap.inc
.. include-build-file:: inc/mcpwm_etm.inc
.. include-build-file:: inc/components/driver/mcpwm/include/driver/mcpwm_types.inc
.. include-build-file:: inc/components/esp_driver_mcpwm/include/driver/mcpwm_types.inc
.. include-build-file:: inc/components/hal/include/hal/mcpwm_types.inc
@@ -9,6 +9,7 @@ In order to control the dependence of other components on drivers at a smaller g
- `esp_driver_pcnt` - Driver for pulse counter
- `esp_driver_gpio` - Driver for GPIO
- `esp_driver_spi` - Driver for GPSPI
- `esp_driver_mcpwm` - Driver for Motor Control PWM
For compatibility, the original `driver`` component is still treated as an all-in-one component by registering these `esp_driver_xyz`` components as its public dependencies. In other words, you do not need to modify the CMake file of an existing project, but you now have a way to specify the specific peripheral driver that your project depends on.
@@ -1044,7 +1044,7 @@ API Reference
.. include-build-file:: inc/mcpwm_sync.inc
.. include-build-file:: inc/mcpwm_cap.inc
.. include-build-file:: inc/mcpwm_etm.inc
.. include-build-file:: inc/components/driver/mcpwm/include/driver/mcpwm_types.inc
.. include-build-file:: inc/components/esp_driver_mcpwm/include/driver/mcpwm_types.inc
.. include-build-file:: inc/components/hal/include/hal/mcpwm_types.inc
@@ -9,6 +9,7 @@
- `esp_driver_pcnt` - 脉冲计数器驱动
- `esp_driver_gpio` - GPIO 驱动
- `esp_driver_spi` - 通用 SPI 驱动
- `esp_driver_mcpwm` - 电机控制 PWM 驱动
为了兼容性,原来的 `driver` 组件仍然存在,并作为一个 “all-in-one" 的组件,将以上这些 `esp_driver_xyz` 组件注册成自己的公共依赖。换句话说,你无需修改既有项目的 CMake 文件,但是你现在多了一个途径去指定你项目依赖的具体的外设驱动。