|
3 страниц
< 1 2 3
|
 |
Ответов
(30 - 39)
|
Aug 19 2009, 09:12
|
Частый гость
 
Группа: Участник
Сообщений: 80
Регистрация: 3-07-09
Пользователь №: 50 897

|
Цитата(Flexz @ Aug 19 2009, 11:44)  Можно перебрать все компорты, кидая туда тестовый запрос и смотреть откуда придет ответ, так часто делают. Этим можно нарушить работу остальных устройств
|
|
|
|
|
Aug 19 2009, 10:01
|
Частый гость
 
Группа: Участник
Сообщений: 80
Регистрация: 3-07-09
Пользователь №: 50 897

|
Цитата(Flexz @ Aug 19 2009, 12:54)  А у вас много девайсов на компортах висит? я вот только с блютусом и переходниками usb-rs-XXX в последнее время встречаюсь, да еще старые программаторы. У меня нет, а у заказчиков много. Поразбираюсь с libusb. Кто с ней работал? Какие отзывы? Работа стабильная? "Синие экраны" не наблюдаются? И ещё один важный ньюанс: совместимость с Windows Vista и Windows 7?
Сообщение отредактировал head_sk - Aug 19 2009, 10:18
|
|
|
|
|
Aug 20 2009, 20:36
|
Участник

Группа: Участник
Сообщений: 43
Регистрация: 26-06-09
Пользователь №: 50 675

|
Здравствуйте. Не подскажите в чем может быть загвоздка? Писал программу для драйвера от атмела. Функция отправки хосту работала идеально. Поменял драйвер на usbser.sys. Теперь первая отправка работает хорошо. А вот вторая уже не отправляется. Вот код отправки. Код unsigned int USB_Write(unsigned char* buffer, unsigned int size) { /***/ while((AT91C_BASE_UDP->UDP_CSR[2]&AT91C_UDP_TXPKTRDY) == AT91C_UDP_TXPKTRDY); while (size--) AT91C_BASE_UDP->UDP_FDR[2] = *buffer++; UDP_EP_SetFlag(AT91C_BASE_UDP, 2, AT91C_UDP_TXPKTRDY)
return xSemaphoreTake(TXSemaphore, 5); } Во время второй отправки не срабатывает прерывание AT91C_UDP_TXCOMP. А во время третьей отправки код зависает на строчке с пометкой /***/ В чем может быть проблема? Что в коде не так? Почему с атмеловским драйвером работает а с usbser нет?
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|