Ahogy én is tettem usb eszköz
Valahol olvastam egyszer, hogy az alkotók az első USB specifikáció célja, hogy a szokásos könnyű megvalósítani hardver összetettsége miatt a szoftver. Így a cél az volt, hogy csökkentsék az árat, és a termelés USB eszközök nagyon kedvező. Most már elmondhatjuk, hogy a chipgyártó csinálta, de ez tényleg egyszerű végrehajtani hardverfejlesztéseket szabvány? Attól tartok, hogy a válasz nem egyértelmű.
Tegyük fel, hogy kell csinálni az egyszerű USB-eszközt. Milyen lehetőségeim vannak?
1. A külső chip, például átalakítók USB-soros. Tudom használni a soros port lehet mindent. FTDI cég gyárt ilyen chipek. Ez FT232R USB-UART és FT245R USB-FIFO. Ezeknek a használata chipek teszi a fejlesztés a készülék nagyon egyszerű, de kismértékben növeli a költségeket.
2. Az mikrokontroller beépített USB interfész. Az ilyen chip gyárt, mint például Atmel (pl AT90USB82 chip). Egy jó megoldás ismereteket igényel AVR utasításkészlet és általában AVR mikroprocesszor.
3. A AVR mikrokontroller szoftver emuláció az USB interfész. Ez a híres könyvtár V-USB.
Meg kell jegyezni, hogy a választás ezek közül bármelyik három módszert nagyban egyszerűsíti az életét, és valójában továbbra is a sötétben: „Nehéz végrehajtani USB vas”
Itt az végrehajtását „vas”, mármint a legalacsonyabb szintű tervezés - áramköröket.
Azt akartam, hogy nézd meg a lehetőséget, USB realizvatsii az „otthon”. Az eset kiderült, rosszul nem könnyű, de kiderült!
Annak megvalósítása, vettem a rover USB kártya FPGA Altera EPM240T100C5 (240 logikai elemek). Her program itt.
Development Environment Altera Quartus II v9.
Íródtak Verilog: egy vevőegységet és adó. USB-mag - modul eldöntésére, hogy mikor és mit kell küldeni. Minden csomag és címkék kerültek a belső flash memória chip CPLD.
Ha a készülékkel vettem idVendor = 0x9FB Altera (Remélem, megbocsát nekem?) És idProduct = 0x60A5 (a mennyezet).
Driver Windows nem írtam - vett egy sor Microsoft Windows Driver Developer Kit például BULKUSB.SYS vezető és egyszerűen fordítsuk le. De az INF fájl kellett változtatni - jelzik a gyártó azonosítóját és a termék azonosítója.
Program dolgozni az eszköz természetesen meg kell írnom.
Minden forráskód, a járművezetők és a projekt CPLD itt található.
Összesen én egyszerű eszközt hozott chip 215 CPLD logikai elemek.
Persze, én nem is követte az USB-szabvány - Nem csináltam egy ellenőrző vett csomagok és paritás-ellenőrző váltani. Azonban, tesztek kimutatták meglehetősen stabil működése a készüléket hosszabb ideig.
További információ az oldalon rover díjat.