mirror of
https://github.com/alexandrebobkov/ESP-Nodes.git
synced 2026-02-06 14:02:42 +00:00
RC motor logic
This commit is contained in:
0
ESP-IDF_Robot/build/.ninja_lock
Normal file
0
ESP-IDF_Robot/build/.ninja_lock
Normal file
@@ -1 +1 @@
|
||||
aff27353fa11cad1b494e8e65dc7cdb1cf0e28e3
|
||||
e5d316c4ef98c1a87bde0c3052cec715119376ab
|
||||
|
||||
213
ESP-IDF_Robot/build/local_components_list.temp.yml
Normal file
213
ESP-IDF_Robot/build/local_components_list.temp.yml
Normal file
@@ -0,0 +1,213 @@
|
||||
components:
|
||||
- name: "app_trace"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/app_trace"
|
||||
- name: "app_update"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/app_update"
|
||||
- name: "bootloader"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/bootloader"
|
||||
- name: "bootloader_support"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/bootloader_support"
|
||||
- name: "bt"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/bt"
|
||||
- name: "cmock"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/cmock"
|
||||
- name: "console"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/console"
|
||||
- name: "cxx"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/cxx"
|
||||
- name: "driver"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/driver"
|
||||
- name: "efuse"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/efuse"
|
||||
- name: "esp-tls"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esp-tls"
|
||||
- name: "esp_adc"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esp_adc"
|
||||
- name: "esp_app_format"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esp_app_format"
|
||||
- name: "esp_bootloader_format"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esp_bootloader_format"
|
||||
- name: "esp_coex"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esp_coex"
|
||||
- name: "esp_common"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esp_common"
|
||||
- name: "esp_driver_ana_cmpr"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esp_driver_ana_cmpr"
|
||||
- name: "esp_driver_cam"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esp_driver_cam"
|
||||
- name: "esp_driver_dac"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esp_driver_dac"
|
||||
- name: "esp_driver_gpio"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esp_driver_gpio"
|
||||
- name: "esp_driver_gptimer"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esp_driver_gptimer"
|
||||
- name: "esp_driver_i2c"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esp_driver_i2c"
|
||||
- name: "esp_driver_i2s"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esp_driver_i2s"
|
||||
- name: "esp_driver_isp"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esp_driver_isp"
|
||||
- name: "esp_driver_jpeg"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esp_driver_jpeg"
|
||||
- name: "esp_driver_ledc"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esp_driver_ledc"
|
||||
- name: "esp_driver_mcpwm"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esp_driver_mcpwm"
|
||||
- name: "esp_driver_parlio"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esp_driver_parlio"
|
||||
- name: "esp_driver_pcnt"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esp_driver_pcnt"
|
||||
- name: "esp_driver_ppa"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esp_driver_ppa"
|
||||
- name: "esp_driver_rmt"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esp_driver_rmt"
|
||||
- name: "esp_driver_sdio"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esp_driver_sdio"
|
||||
- name: "esp_driver_sdm"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esp_driver_sdm"
|
||||
- name: "esp_driver_sdmmc"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esp_driver_sdmmc"
|
||||
- name: "esp_driver_sdspi"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esp_driver_sdspi"
|
||||
- name: "esp_driver_spi"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esp_driver_spi"
|
||||
- name: "esp_driver_touch_sens"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esp_driver_touch_sens"
|
||||
- name: "esp_driver_tsens"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esp_driver_tsens"
|
||||
- name: "esp_driver_uart"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esp_driver_uart"
|
||||
- name: "esp_driver_usb_serial_jtag"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esp_driver_usb_serial_jtag"
|
||||
- name: "esp_eth"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esp_eth"
|
||||
- name: "esp_event"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esp_event"
|
||||
- name: "esp_gdbstub"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esp_gdbstub"
|
||||
- name: "esp_hid"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esp_hid"
|
||||
- name: "esp_http_client"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esp_http_client"
|
||||
- name: "esp_http_server"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esp_http_server"
|
||||
- name: "esp_https_ota"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esp_https_ota"
|
||||
- name: "esp_https_server"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esp_https_server"
|
||||
- name: "esp_hw_support"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esp_hw_support"
|
||||
- name: "esp_lcd"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esp_lcd"
|
||||
- name: "esp_local_ctrl"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esp_local_ctrl"
|
||||
- name: "esp_mm"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esp_mm"
|
||||
- name: "esp_netif"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esp_netif"
|
||||
- name: "esp_netif_stack"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esp_netif_stack"
|
||||
- name: "esp_partition"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esp_partition"
|
||||
- name: "esp_phy"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esp_phy"
|
||||
- name: "esp_pm"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esp_pm"
|
||||
- name: "esp_psram"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esp_psram"
|
||||
- name: "esp_ringbuf"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esp_ringbuf"
|
||||
- name: "esp_rom"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esp_rom"
|
||||
- name: "esp_security"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esp_security"
|
||||
- name: "esp_system"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esp_system"
|
||||
- name: "esp_timer"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esp_timer"
|
||||
- name: "esp_vfs_console"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esp_vfs_console"
|
||||
- name: "esp_wifi"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esp_wifi"
|
||||
- name: "espcoredump"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/espcoredump"
|
||||
- name: "esptool_py"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/esptool_py"
|
||||
- name: "fatfs"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/fatfs"
|
||||
- name: "freertos"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/freertos"
|
||||
- name: "hal"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/hal"
|
||||
- name: "heap"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/heap"
|
||||
- name: "http_parser"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/http_parser"
|
||||
- name: "idf_test"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/idf_test"
|
||||
- name: "ieee802154"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/ieee802154"
|
||||
- name: "json"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/json"
|
||||
- name: "linux"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/linux"
|
||||
- name: "log"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/log"
|
||||
- name: "lwip"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/lwip"
|
||||
- name: "mbedtls"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/mbedtls"
|
||||
- name: "mqtt"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/mqtt"
|
||||
- name: "newlib"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/newlib"
|
||||
- name: "nvs_flash"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/nvs_flash"
|
||||
- name: "nvs_sec_provider"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/nvs_sec_provider"
|
||||
- name: "openthread"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/openthread"
|
||||
- name: "partition_table"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/partition_table"
|
||||
- name: "perfmon"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/perfmon"
|
||||
- name: "protobuf-c"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/protobuf-c"
|
||||
- name: "protocomm"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/protocomm"
|
||||
- name: "pthread"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/pthread"
|
||||
- name: "riscv"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/riscv"
|
||||
- name: "rt"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/rt"
|
||||
- name: "sdmmc"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/sdmmc"
|
||||
- name: "soc"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/soc"
|
||||
- name: "spi_flash"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/spi_flash"
|
||||
- name: "spiffs"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/spiffs"
|
||||
- name: "tcp_transport"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/tcp_transport"
|
||||
- name: "touch_element"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/touch_element"
|
||||
- name: "ulp"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/ulp"
|
||||
- name: "unity"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/unity"
|
||||
- name: "usb"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/usb"
|
||||
- name: "vfs"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/vfs"
|
||||
- name: "wear_levelling"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/wear_levelling"
|
||||
- name: "wifi_provisioning"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/wifi_provisioning"
|
||||
- name: "wpa_supplicant"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/wpa_supplicant"
|
||||
- name: "xtensa"
|
||||
path: "/home/alex/esp/esp-idf/v5.4.1/components/xtensa"
|
||||
- name: "main"
|
||||
path: "/home/alex/github/ESP-Nodes/ESP-IDF_Robot/main"
|
||||
@@ -26,6 +26,7 @@
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <inttypes.h>
|
||||
#include <math.h>
|
||||
#include "freertos/FreeRTOS.h"
|
||||
#include "freertos/task.h"
|
||||
#include "freertos/queue.h"
|
||||
@@ -364,7 +365,8 @@ void joystick_mix (int X_raw, int Y_raw, int *pwm_a, int *pwm_b) {
|
||||
|
||||
// 4. Normalize pair so neither exceeds magnitude 1
|
||||
float m = fmaxf(1.0f, fmaxf(fabsf(L0), fabsf(R0)));
|
||||
float L = L0 / m; float R = R0 / m;
|
||||
float L = L0 / m;
|
||||
float R = R0 / m;
|
||||
|
||||
// 5. Scale to signed PWM range [-8191 .. +8190]
|
||||
float L_scaled = L * 8190.0f;
|
||||
|
||||
Reference in New Issue
Block a user