Jump to content

    

js_slider

Участник
  • Content Count

    29
  • Joined

  • Last visited

Community Reputation

0 Обычный

About js_slider

  • Rank
    Участник
  1. Да, я устанавливал этот драйвер, после распаковки там простой inf файл + цифровая подпись + Exe-шник установки данного inf файла, который в свою очередь использует usbser.sys.
  2. Так этот драйвер от ST есть нечто иное как inf файл, который и использует стандартный usbser.sys. Или я не прав?
  3. Да, использую стандартный драйвер usbser.sys, слышал что он глючный... но свой написать нет опыта... подскажите есть какое решение? Может есть безглючный аналог драйвера? Поделитесь пожалуйста.
  4. Здравствуйте. Использую пример VCP от ST. Работаю под WinXP с виртуальным COM портом через API как с файлом. Циклически посылаю данные (короткие пакеты от 8 до 16 байт) в железку функцией - WriteFile. Данные уходят моментально, но время от времени возникает непонятный TimeOut на передачу (WriteFile) порой до 250ms. При аналогичной работе, но с реальным COM портом, таких задержек нет. В чем может быть проблема? Кто сталкивался?
  5. Просто я в некоторых схемах отошел от EEPROM, и использую эмуляцию EEPROM из Flash контроллера. Это вполне себя оправдывает...
  6. Это отличный вариант, но только если в схеме используется EEPROM, а вот если ее нет и не надо.. то покупать их, затем впаивать в некое считывающее MAC устройство... как то извращенно
  7. Понятно... А скажите как обстоят дела с MAC для Ethernet... Есть легальные варианты не платить буржуям из IEEE? Кто имеет реальный опыт выпуска устройств?
  8. Правильно ли я понял что установка драйвера возможна при VID=PID=0 только для HID и MassStorage устройств, а для CDC никак?
  9. Суть проблемы, сделал виртуальный COM порт на STM32F405. Для USB устройств требуется покупать VID PID за дорого... Есть энтузиасты которые ставят VID=PID=0, и драйвер у них ставится по классу устройства, а не по VID PID, но там не виртуальный COM порт был. И поговаривают что это вполне легально... Собственно вопрос Есть ли способ установить драйвер usbser.sys для виртуального COM порта не по VID PID?
  10. Вобщем проблему решил... Пришлось переписать местами драйвер у ST. Как оказалось использовать их кольцевой буфер APP_Rx_Buffer, как у них в примере: for( i = 0; i < Len; i++ ) { //push data into transfer buffer APP_Rx_Buffer[APP_Rx_ptr_in] = Buf[i]; //increase pointer value APP_Rx_ptr_in++; // To avoid buffer overflow if(APP_Rx_ptr_in == APP_RX_DATA_SIZE) { APP_Rx_ptr_in = 0; } } крайне не желательно. Оно так глючит. Описание решения проблемы нашел тут: https://my.st.com/public/STe2ecommunities/m...currentviews=96 Теперь передаю за раз 80килобайт, все уходит без потерь Скорость обмена получил порядка 445килобайт. можно и выше, если дописывать буфер по CallBack функции окончания передачи предыдущего пакета..., но меня и так устраивает...
  11. Поделитесь пожалуйста кодом как вы определяете завершение передачи? Имею аналогичную проблему... удалось ли вам ее решить?
  12. У коллег ветка заглохла.. и без результатно в отношении потери данных... Неужели Virtual COM Port не способен стабильно работать... работают же как то FTDI и им подобные...
  13. Сбои заключаются в том что посланный массив данных от МК к PC, не доходит весь, а частично где то теряется. Как решается данная задача потери? неужели это не лечится на VCP? По поводу DMA.. USB у меня работает в режиме FullSpeed, как я понял в этом режиме нет поддержки DMA у ST32F4, поправте если ошибаюсь. Люди добрые покажите примером как это можно сделать... как понять что буфер APP_Rx_Buffer[] освободился на N-ое кол-во байт...
  14. Опишите пожалуйста, если можно с примером, как реализованно заполнение буфера? Заполняете 64байта, потом ждете какой-то таймаут или прерывание по окончании передачи? затем вновь 64 байта...? Отключаете ли прерывание USB на время заполнения буфера в цикле? Не происходят ли переодические сбои при передачи больших массивов данных?
  15. Заметил еще проблему... Если массив данных более 64 байт, то переодически происходят сбои в передаче данных... Кто сталкивался? Подскажите что не так делаю?