Один GPIO можно настроить через HAL, low-level API или прямую запись регистров. HAL ускоряет старт и переносимость внутри семейства, LL даёт более тонкий контроль, bare metal делает поведение прозрачным, но требует точного чтения manual.
Профессиональный подход не воюет с уровнями абстракции, а связывает их. Ученик должен понимать, какой регистр меняет библиотека, какие побочные эффекты возникают и как проверить результат прибором.
В курсе одна и та же задача разбирается на трёх уровнях: API, регистры, электрический сигнал. Это резко повышает качество инженерного мышления.