Я начинал разбираться с USB четыре года назад. Инфы тогда не было никакой, кроме, собственно, стандарта и пары примеров. До всего приходилось доходить самому. Собственный USB-стэк для связки ATmega+PDIUSBD12 я писал два месяца. Пока писал - разобрался досконально. После этого, написал собственный стэк для MC68HC908JB8 за вечер.
После этого, книжка (что первая, что вторая) - для меня не содержит ничего нового. Я, правда, себе их прикупил - как справочник, чтобы в MSDN лишний раз не лазить.
С драйверами - все просто. В минимальном варианте, берется пример bulk из ddk, для него генерится свой guid и, возможно, указывается размер буфера побольше. Если драйвер не содержит собственной логики - этого достаточно. Работа из программы - тоже проста: самое сложное - получить имя устройства (но для этого есть стандартный пример), а дальше - CreateFile, ReadFile, WriteFile...
C ARM-ами я еще толком не работал. Серьезные разборки у меня намечаются в ближайшем времени, но не с SAM7, а с LPC2148.
Если будут вопросы по протоколу/реализации chapter9 на клиенте - попробую ответить.
|