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

C8051F320 от Sillicon Labs и USB драйвер

Тема такая:

Нужно написать драйвер для USB данной микросхемы и организовать BULK Transfer и что бы с этим девайсом можно было работать как с обычным COM-портом.

100% такое кто то делал. Т.е. USB драйвер как виртуальный COM-порт.

Что бы мне заново не изобретать велосипед, подскажите где взять примерчик ?

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


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

CP210x по некоторым источникам - это C8051F320 заточенный под USB <-> COM мост. Зайди на ефо.ру. Наверняка в доках найдёшь чтонибудь.

Есть подозрение, что под винды драйвер стандартный будешь использывать от CP210x, а в программе только стартовую инициализацию делать.

Обратись к Konst_777 - работал с C8051F320.

Ну и эти ветки посмотри.

http://forum.electronix.ru/index.php?showtopic=6781

http://forum.electronix.ru/index.php?showt...53&hl=c8051f320

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


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

Последующее изложение предполагает, что Вам действительно необходимо использовать контроллер C8051F320, а не мост USB <-> COM.

 

Под Windows, с контроллером C8051F320 проще "работать" используя USBXpress Development Kit фирмы SiLabs. Kit содержит драйверы для Windows 98SE/Me/2000/Server 2003/XP, а также API для host-а (.DLL) и контроллера (.lib). У SiLabs есть руководство программиста для USBXpress (AN169). Используя USBXpress реально создать работающую систему, даже не зная, что такое USB.

 

USBXpress не имеет драйвера для Linux. Если желательно иметь одно и то же firmware контроллера и для Windows и для Linux, то можно написать firmware так, что контроллер будет восприниматься операционными системами, как устройство, для которого Вы сможете найти драйверы под обе ОС. Например, как мост USB <-> Ethernet или мост USB <-> COM. При этом следует учитывать, что придется поискать производителя, у которого драйверы виртуального COM порта (VCP) обеспечивают скорость обмена по USB больше 400 Кбайт/сек.

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


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

USBExpress - это действительно очень удобно, если нужно организовать обмен с железом и нужно писать свое приложение под винду. У меня задача такая что бы стандартные терминальные программы могли работать с моей железкой. Т.е. Драйвер должен делать виртуальный COM порт.

 

Если, как говорят умные люди, CP2102 это C8051F320 заточеный под бридж USB <-> COM то мне наверное нужна начинка этого CP2102. Т.е. прошивка или примерчик, то что я смогу залить в 320-ы и он будет себя вести как CP2102 и к нему подойдут драйвера от CP2102.

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


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

Готового проекта для С8051F320 у меня нет, так как до сих пор мне хватало USBXpress. Если не найдете готовый проект, то могу поучаствовать в его создании.

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


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

Есть вот какое соображение:

Берем драйвер для CP2102 правим inf таким образом что бы драйвер "подходил" для нашего девайса и пишем прошивку для С8051F320 уже "под этот" драйвер. Кароче "подгоняем" прошивку под драйвер.

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


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

Лучше так: в firmware контроллера ставим VID и PID, как для CP210x и обрабатываем все запросы драйвера устройства для CP210x.

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


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

И все-таки, учитывая все вышеизложенное Вами, почему бы Вам не использовать любой мост USB <-> COM в связке с любым контроллером, у которого есть последовательный порт? Стоимость такой системы в "железе" может оказаться даже ниже стоимости C8051F320. Или есть особая предрасположенность к данному контроллеру?

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


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

Аднако не соглашусь с тобой дядька. Посчитай сколько будет стоять например C8051F017 + CP2102 и C8051F320.

320-й дешевле + меньше элементов на плате... удобство и цена. Изделие веть не радиолюбительское и не разовое.

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


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

Ну спасиб тебе дядька :a14: за AN220, AN197 - веть они находятся в Application Notes к CP210x а я все глаза проглядел в App Notes к C8051F320, прям незнаю как благодарить :cheers: !

 

А прошивочка (Firmware) где взялась ? Сам писал или тоже генерится как-то ?

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


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

Сам писал.

Маладец, какой!

 

А если в прошивке для работы с USB использовать USBExpress ? У меня что то неполучается. Хотя теоретически должно работать. Кто-то пробовал ?

 

А то там весь текст на асме ... многа букв, неасилю... :blink:

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


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

После установки SiLabs IDE, в папке C:\SiLabs\MCU\Examples\C8051F32x\USB_Bulk\Firmware находится пример firmware для Bulk пересылок на С. Когда-то я использовал этот пример, чтобы написать свое firmware на ассемблере. Вам предстоит решить обратную задачу. Правда, частично.

 

Не думаю, что firmware для USBXpress (библиотека USB_API.LIB ) сможет "работать" с драйвером VCP.

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


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

USBExpress - это действительно очень удобно, если нужно организовать обмен с железом и нужно писать свое приложение под винду. У меня задача такая что бы стандартные терминальные программы могли работать с моей железкой. Т.е. Драйвер должен делать виртуальный COM порт.

 

Если, как говорят умные люди, CP2102 это C8051F320 заточеный под бридж USB <-> COM то мне наверное нужна начинка этого CP2102. Т.е. прошивка или примерчик, то что я смогу залить в 320-ы и он будет себя вести как CP2102 и к нему подойдут драйвера от CP2102.

 

По моему я такую же идею встречал на специализированном форуме на сайте www.silabs.ru

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


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

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...