да, с нуля.
на плате есть только один чип Альтеры CPLD с 240 логическими элементами.
Никаких других контроллеров на плате нет. Вы можете убедиться в этом посмотрев схему платы а так же исходные тексты USB приемника и передатчика.
Судя по использованной микросхеме, это первая версия USB-протокола. Для второй понадобится что-то посерьезней CPLD. А тут уже и USB3 все чаще мелькает на горизонте. В любом случае — мои аплодисменты! Представляю, как китайцы тебе за схему и прошивку благодарны :)
Ну почти :) нужно сделать большую красную panic кнопку :) Потом программно биндить ее на что нибудь. Например на F5 в IDE или кнопка экстренного сворачивания порнофильма :)
Не уверен, что смогу предложить что-то дешевле 500 рублей — просто невыгодно. Да еще и слать из Москвы в Казань. Так лучше наверное Вам самому сделать что-то подобное на arduino, либо из старой клавиатуры + выключателя =)
Для промышленного выпуска вы вряд ли сильно будете лепить дорогостоящие CPLD или FPGA — а делать свой чип вы вряд ли будете, если у вас тираж устройства меньше миллионов штук. Да и то, если будете — то для того, чтобы вам сделать его дешевле, чем аналогичные решения от FTDI или встроенные в контроллеры AVR / PIC.
Open source реализация стека USB? Так их и так вагон и маленькая тележка. Про V-USB, который, кстати, GPLv2, вы уже сами сказали. Есть еще USBtiny, IgorPlug и т.п. — более чем уверен, что вы их все знаете. В проектах OpenCores перечислены несколько USB-реализаций. Зачем делать n+1-ую? Только для того, чтобы на CPLD?
По мне так чем изобретать велосипед интересней замутить самостоятельный девайс используя уже готовый усб интерфейс.
Как заготовка для творчества и альтернатива arduino- Propeller Proto Board USB
Стоит 30 баксов. На плате распаян FTDI USB, проц с 8-ю ядрами, EEPROM и куча места под установку компонентов.
Есть туча готовых объектов с реализациями различных интерфейсов, дабы сосредоточится на логике создаваемого устройчтва, а не на написании велосипедов.
Наоборот. Плевание в потолок — это создание чего-то нового — мокрого рисунка на потолке, например.
Если что-то готовое стоит 30 баксов — значит кто-то научился его делать, сделал и продаёт.
Часто бывает интересно и полезно разобраться в том КАК нечто работает, а уже потом применять готовое решение.
Зачастую помогает найти куда как более эффективное и эффектное применение.
Параллельный порт (25-контактов), у которого 2 контакта на планке замыкались = кнопка, а припаянный с резистором светодиод на ещё 2 других контакта = лампочка, кажется верхом гениальности и технологичности. И таких 8 выходов и штук 6 входов.
Как я делал USB устройство