Ребята помогите с UART… 🙁 Уже несколько дней бьюсь, в убой не понимаю как оно работает… Env: STM32F411 / CubeMX / CubeIDE
есть UART, по которому должны приходить или 32 или 4 символа, я понятия не имею какой длины прийдет следующий пакет… Пытаюсь переписать одну библиотеку с ардуино, и там используется метод stream->available(), который возвращает длину считанного потока. Так вот понять пытаюсь как же можно определить эту длину принятых данных? Может в UART самом есть какие-то стоп-старт биты, чтобы можно было по одному вытаскивать в RxCallback и собирать пакет на передачу, или как это правильно сделать?..
А карта регистров для вашего МК и для МК из этого примера одинаковые? Если да, то можно попробовать скорость снизить, вдруг там из-за некратности скоростей ошибка большая. И плюс можно проверить на плате физически, что данные с ПК доходят до входа RX контроллера, если есть осцил или лог. анализатор. Плюс по поводу отладки - у вас есть не только светодиод, но ещё и работающий TX UART, так что можно для отладки состояния регистров и тп отправлять на комп