cart: вынести SBUS и логику пульта в отдельные модули
Подготовка к ролям TX/RX: выделяю из монолитного main.cpp
переиспользуемые части без изменения поведения.
- sbus.{h,cpp}: упаковка 25-байтового SBUS-кадра, инициализация и
вывод инвертированного SBUS на USART1 (PA9) — единственный владелец
провода к драйверу, общий для будущих ролей.
- stick.{h,cpp}: калибровка стика, нормализация осей и профиль
газа/поворота, формирование ch[16]. Неиспользованные в прежнем loop
expo()/toSbus() и мёртвые константы не переносятся.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,12 @@
|
||||
// Пульт: чтение стика (АЦП PA0/PA1), калибровка, профиль газа/поворота и
|
||||
// формирование значений SBUS-каналов. Вся «логика пульта» живёт здесь.
|
||||
// Компилируется только для роли TX (см. build_src_filter в platformio.ini).
|
||||
#pragma once
|
||||
#include <stdint.h>
|
||||
|
||||
// Инициализация АЦП-входов стика.
|
||||
void stickInit();
|
||||
|
||||
// Прочитать стик и заполнить ch[16] значениями SBUS-каналов (нейтраль + ch2/ch4).
|
||||
// Возвращает по ссылкам нормализованные оси для отладки.
|
||||
void stickComputeChannels(uint16_t ch[16], float *fwdOut, float *rightOut);
|
||||
Reference in New Issue
Block a user