osnwt 0 28 февраля, 2006 Опубликовано 28 февраля, 2006 · Жалоба Обращаю внимание на то, что в проектах с указанным USB драйвером следует использовать последнюю версию, всегда присутствующую в reference-проекте PowerSwitch (там и только там она и обновляется). Текущая версия - от 20.02.2006. В более ранних есть неприятный баг, проявляющийся по разному - от непреднамеренного вызова callback-функции usbFunctionRead() перед usbFunctionWrite() до потери пакетов при жестких времянках со стороны хоста. После обновления все проблемы исчезли. Проявляется не во всех ситуациях, но лучше обновить. Что-то я не нашел там этой книжки :-( Только что проверил - лежит. Ищи по слову USB на странице с разделом "Программирование". Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Roy 0 28 февраля, 2006 Опубликовано 28 февраля, 2006 · Жалоба Все равно не нашел. Как хоть книжка называется - поисковиком поищу Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
osnwt 0 28 февраля, 2006 Опубликовано 28 февраля, 2006 · Жалоба Все равно не нашел. Как хоть книжка называется - поисковиком поищу Часть 1. 5'222'400 bytes Часть 2. 4'588'974 bytes Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
lazycamel 0 6 марта, 2006 Опубликовано 6 марта, 2006 · Жалоба Вперся в непонятный глюк. Сделал фьючерепорты, сделал их обработку. При чтении - все ок, при записи -запись проходит, но хид-драйвер возвращает "device not functioning properly" в приложение. Следующее чтение показывают что на самом деле все ок, запись в буфер прошла. Причину понять совершенно не могу. ЗЫ: Кто последовал совету включить оптимизации -Оо,обратите внимание. WinAVR в таком режиме заоптимизирует выражение типа переменная=+<регистр> (например tmp=+ADC) во что-то совершенно дикое. хотя в -О2 все работает совершенно нормально Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
osnwt 0 7 марта, 2006 Опубликовано 7 марта, 2006 · Жалоба Вперся в непонятный глюк. ... переменная=+<регистр> (например tmp=+ADC) во что-то совершенно дикое. хотя в -О2 все работает совершенно нормально Можно наивный вопрос: а что за операция языка C такая "=+"? Я знаю операцию "+=", то есть, добавить к левому lvalue значение правого выражения. А "=+", если значение порта представлено константным адресом (например, 0x1f) превратится в "переменная = +0x1f". То есть, если ожидалось накопление считанных значений в переменной, то этого не будет по определению. Может, дело в этом? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
lazycamel 0 7 марта, 2006 Опубликовано 7 марта, 2006 · Жалоба Вперся в непонятный глюк. ... .... Может, дело в этом? @#$%@ !!! Слов нет. Естественно !!! Надо же - два дня смотреть в переклине как баран на новые ворота, не замечая самую тупую ошибку. :-( Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
osnwt 0 7 марта, 2006 Опубликовано 7 марта, 2006 · Жалоба Слов нет. Естественно !!! К слову говоря, я обычно отделяю операнды от операции пробелами. Будь оно записано так: var =+ ADC Вероятнее всего, компилятор бы сразу выругался, что символ знака числа отделен пробелом. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться