Чтение / запись USB-накопителя с помощью STM32F103C8

#c #embedded #stm32 #usb-drive

#c #встроенный #stm32 #usb-накопитель

Вопрос:

Я пытаюсь считывать / записывать данные на флэш-накопитель USB.

Я прочитал в справочном руководстве, что STM32F103xx имеет периферийное устройство USB, но может выступать только в качестве устройства связи. Из того, что я понял, мне нужно, чтобы он действовал как хозяин. Можно ли в любом случае выполнить эту операцию без конвертеров USB в UART, поскольку я пытаюсь быть более эффективным (в финансовом смысле).

Кажется, я не нахожу в интернете никаких подсказок относительно этого конкретного MCU. Если это можно сделать только с помощью конвертера UART, пожалуйста, покажите мне, где искать.

Спасибо!

Комментарии:

1. Действительно, требуется USB-хост, и STM32F103xx может выполнять только роль устройства. Конвертер USB в UART также не поможет. Он не реализует протокол флэш-накопителя. Вам нужно будет перейти на другой микроконтроллер STM32, поддерживающий роль USB-хоста.

2. Вам нужен USB-хост, который поддерживает протокол массового хранения данных USB. Я не понимаю, почему ты вообще заговорил об УАРТЕ. UART не только бесполезен при попытке связаться с USB-накопителем, но и для этого устройства USB-UART также требуется USB-хост.

3. Спасибо вам обоим за то, что уделили свое время ответу! : D

4. Серия F1 серии 105/107 имеет аппаратную поддержку хоста.

Ответ №1:

Как указывали несколько человек, STM32F103C8 не может быть хостом в протоколе связи USB, поэтому передача данных не может быть выполнена.

Я допустил ошибку, когда подумал, что конвертер USB в UART решит проблему. В конвертере не реализован протокол массового хранения, поэтому он не может считывать данные.

Ответы см. В комментариях.