и не стоило начинать. Работа с UART почти не грузит камень и позволяет избавиться от привязки ко времени. USB не дает в контроллере никаких преимуществ перед UART-USB и скоростей выше 1,5 мегабит все равно не получить. И не важно - HAL используется или LL. Так что правильное решение
В качестве бонуса при использовании свистка получается хоть небольшой, но все же шанс, что свисток в случае чего умрет первым, сохранив жизнь контроллеру. В СР2102 конечно защитка не шикарная, но все же есть. В стм надо городить отдельную канитель на линии связи. Можно конечно и не городить, но это не надолго как правило