Перейти к содержанию

    

USB HOST CDC from CubeMx

Дано: микроконтроллер STM32F207VET.

Нужно: подключить к нему USB-устройство CDC.

Сделано: при помощи STM32CubeMx сгенерирован проект c HOST USB и поддержкой CDC.

Итог: USB вроде-бы как работает. Но не совсем.

 

Вот что выводит DEBUG при подключении переходника USB-COM:

 

USB Device Attached

PID: 6001h

VID: 403h

Address (#1) assigned.

Manufacturer : FTDI

Product : USB <-> Serial

Serial Number : N/A

Enumeration done.

This device has only 1 configuration.

Default configuration set.

No registered class for this device.

 

Для пробы, попробовал поддержать HID, тут всё хорошо:

 

USB Device Attached

PID: c00eh

VID: 46dh

Address (#1) assigned.

Manufacturer : Logitech

Product : USB-PS/2 Optical Mouse

Serial Number : N/A

Enumeration done.

This device has only 1 configuration.

Default configuration set.

Switching to Interface (#0)

Class : 3h

SubClass : 1h

Protocol : 2h

Mouse device found!

HID class started.

 

Библиотека что-то ещё от меня хочет при подключении CDC.

Как её "допилить", никто не подскажет?

 

С уважением, Dmitrich.

 

 

 

 

 

 

 

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ftdl переходник ни разу не CDC, о чем вам любезно лог и сообщает.

Для тестирования можете на любой плате от st поднять CDC и посмотреть на результат енумерации.

Изменено пользователем Genadi Zawidowski

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Ftdl переходник ни разу не CDC, о чем вам любезно лог и сообщает.

Для тестирования можете на любой плате от st поднять CDC и посмотреть на результат енумерации.

Вот на плате "поднят" CDC:

 

USB Device Attached

PID: 3h

VID: 10c4h

Address (#1) assigned.

Manufacturer : Silicon Laboratories Inc.

Product : EFM32 USB CDC serial port device

Serial Number : N/A

Enumeration done.

This device has only 1 configuration.

Default configuration set.

DEBUG : Cannot Find the interface for Communication Interface Class.

Device not supporting CDC class.

 

Вывод несколько иной, но суть та-же - не работает....

 

А вот, например. подключение флешки:

USB Device Attached

PID: 3e00h

VID: 13feh

Address (#1) assigned.

Manufacturer : UFD 2.0

Product : Silicon-Power16G

Serial Number : 12020813017E6C214004E780086

Enumeration done.

This device has only 1 configuration.

Default configuration set.

Switching to Interface (#0)

Class : 8h

SubClass : 6h

Protocol : 50h

MSC class started.

Number of supported LUN: 1

LUN #0:

Inquiry Vendor : UFD 2.0

Inquiry Product : Silicon-Power16G

Inquiry Version : PMAP

MSC Device ready

MSC Device capacity : 2619997696 Bytes

Block number : 30283007

Block Size : 512

 

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А вы уверены в этом EFM32?

Где строчки вроде:

Class : 8h

SubClass : 6h

Protocol : 50h

 

Настоящий CDC:

bInterfaceClass 1 02h CDC Control

bInterfaceSubClass 1 02h Abstract Control Model

bInterfaceProtocol 1 01h AT Commands: V.250 etc

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
А вы уверены в этом EFM32?

Где строчки вроде:

...

 

Ни в чём я не уверен. Хотя, в том EFM32 я сам CDC "поднимал", и это именно CDC.

И с компом оно работает.

 

Но вот подключаю ещё одно устройство:

 

USB Device Attached

PID: 5h

VID: 2912h

Address (#1) assigned.

Manufacturer : ATOL Group

Product : ATOL USB device

Serial Number : 00040100

Enumeration done.

This device has only 1 configuration.

Default configuration set.

Switching to Interface (#0)

Class : 2h

SubClass : 2h

Protocol : 1h

DEBUG : Cannot Find the interface for Data Interface Class.

Device not supporting CDC class.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Тогда не знаю... поднимать хост для MSC еще только буду... глядя в куб.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация