USB-Host на STM32F407VET6 под Atollic

Тренироваться будем на дешевой плате STM32F407VET6 в Atollic True Studio и CubeMX. Потому , что это абсолютно бесплатные среды.

По умолчанию линия DP подтянута через 1.5К резистор к 3.3В (режим USB Device).

Надо ОБЯЗАТЕЛЬНО выпаять этот резистор!

фотка 1

Для использования как USB Host надо снаружи контроллера ноги DP, DM через резистры 15К подтянуть к земле .

фотка 2

Сначала как обычно делаем проект в кубе (для True Studio):


Вот результат подключения обычной USB клавиатуры (скорость LS):

фотка 3

Данные нажатых скан кодов (не вникая в внутрь кода) получаем через callback функцию USBH_HID_EventCallback !

Я сначала не понял почему 2 раза срабатывает USBH_HID_EventCallback, по-видимому код нажатия и код отжатия приходят, что вполне удобно.

Не забудьте подключить файл #include "usbh_hid_keybd.h".

Как всегда открытый проект для скачивания

Файлы для скачивания