forked from PX4/PX4-Autopilot
-
Notifications
You must be signed in to change notification settings - Fork 4
Home
Roman Dvořák edited this page Sep 19, 2018
·
4 revisions
Příkaz mixer může mít 2 režimy.
- První režim "load" kompletně smaže nastavení mixeru v zařízení a následně načte a rozparseruje nový mixér.
- Druhý režim "append" přidá nové mixery na konec stávajícího mixování
Mixer se začne načítat na základě systémové aplikace 'mixer.cpp' Ta po přijmutí vstupních parametrů a ověření dostupnosti HW zavolá funkci load_mixer_file() ze souboru 'src/lib/mixer/mixer_load.c'.
Funkce prochází soubor řádek po řadku a hladá, kdy narazí na začátek řádku, který odpovídá předpisu mixeru. Tzn.
- řádek delší než 2 znaky
- První znak je velký
- Druhý znak je dvojtečka Následně se prochází řádky a hledají se mezery ' '. Ověří se maximální velikost řádku (ta je opravdu velká) Upravený řádek s daty se vloží do bufferu (Buffer jako pointer je vstupním parametrem funkce load_mixer_file())
- "can't open %s\n", devname -
- "can't reset mixers on %s", devname - pouze v "load" režimu
- "can't load mixer file: %s", fname - Chyba, kterou vyvolá parserovací funkce - "load_mixer_file(..)"
- "failed to load mixers from %s", fname - Soubor načten a rozparserován. Nepovedlo se přidat nastavení na konec mixovacího nastavení v PX4.
- "Mixer file '%s' is loaded", fname