Skip to content

Готуємо драйвер Послідовного Порту до користувацьких налаштувань

Ця тема пояснює, як підготувати драйвер послідовного порту для того, щоб користувач міг налаштувати його (через параметри) для роботи на послідовних портах будь-якого політного контролера.

Попередні вимоги

Очікується, що драйвер вже існує і запускається в командному рядку, використовуючи синтаксис команди:

sh

де

  • -d: ім'я послідовного порту.
  • -b: швидкість бодів [baud rate] (необов'язково), якщо драйвер підтримує декілька варіантів швидкості бодів. Якщо підтримується, драйвер мусить дозволити вказати швидкість бодів і як просто число, і як параметр, з синтаксисом -b p:<param_name> (що може бути передане через px4_get_parameter_value()) :::tip Дивіться gps driver як приклад. :::

Робимо драйвер налаштовуваним

Аби зробити драйвер налаштовуваним:

  1. Створіть конфігураційний файл модуля YAML:

    • Додайте новий файл з іменем module.yaml у директорію з сорс кодом драйверу

    • Вставте наступний текст і підлаштуйте за потреби:

      cmake
      module_name: uLanding Radar
      serial_config:
          - command: ulanding_radar start -d ${SERIAL_DEV} -b p:${BAUD_PARAM}
            port_config_param:
              name: SENS_ULAND_CFG
              group: Sensors

      Повна документація модулів файлів конфігурації знаходиться у файлі validation/module_schema.yaml. Це також використовується для перевірки всіх файлів конфігурації в CI.

:::

  1. Додайте конфігурацію модулів в CMakeLists.txt файл драйвера модуль:

    cmake
    px4_add_module(
     MODULE drivers__ulanding
     MAIN ulanding_radar
     SRCS
         ulanding.cpp
     MODULE_CONFIG
         module.yaml
     )