ðpÉ×ÅÔÓÔ×yÀ, Jurgis !
ëÁË-ÔÏ Jurgis Armanavichius ÐÉÓÁÌ(Á) Ë Anton Labozin:
JA> ñ ÐpÉÍÅÎÑÀ CY7C68001 (ÎÏ ÓÏÂÉpÁÀÓØ ÐÅpÅÊÔÉ ÎÁ CY7C68013A). þÉÐ ÐpÏÓÔÏ JA> ÐpÅ×ÏÓÈÏÄÎÙÊ! õ ÍÅÎÑ ÓËÏpÏÓÔÉ ÐÅpÅÄÁÞÉ ÚÎÁÞÉÔÅÌØÎÏ ÍÅÎØÛÅ, ÄÏ 8 íâ/ÓÅË. JA> äyÍÁÀ, ÞÔÏ ÐÏÌyÞÅÎÉÅ ÓËÏpÏÓÔÉ ÐÏÄ 40 íâ pÅÁÌØÎÏ, ÎÏ ÄÏ×ÏÌØÎÏ ÔÑÖÅÌÏ, Ô.Ë. JA> ÎÅ ËÁÖÄÙÊ ËÏÍÐ ÔÁËyÀ ÓËÏpÏÓÔØ ÐÏÔÑÎÅÔ. é, ËÏÎÅÞÎÏ ÖÅ, ÎÉÞÅÇÏ ÄpyÇÏÇÏ ÎÁ JA> ËÏÍÐÅ × ÜÔÏÔ ÍÏÍÅÎÔ ÄÅÌÁÔØ ÎÅÌØÚÑ ÂyÄÅÔ.
üÔÏ ÎÅ ÐyÇÁÅÔ, ×ÏÐpÏÓ ÞÔÏ Ó ÜÔÏÊ ËyÞÅÊ ÄÅÌÁÔØ. HÏ ÜÔÏ yÖÅ ËÁË ÂÙ ÎÅ ÓÏ×ÓÅÍ ÍÏÉ ÐpÏÂÌÅÍÙ, ÍÏÑ ÚÁÄÁÞÁ - ××ÅÓÔÉ :)
JA> (ðpÁ×ÄÁ, ÍÏÖÎÏ ÉÚÏÝpÉÔØÓÑ Ó ÐÏÍÏÝØÀ ÈÏpÏÛÏ ÐpÏÄyÍÁÎÎÏÊ ÏÞÅpÅÄÉ JA> overlapped IO É ÎÁÚÎÁÞÅÎÉÅÍ ×ÙÓÏËÏÇÏ ÐpÉÏpÉÔÅÔÁ ÔpÁÎÓÐÏpÔÎÏÍy JA> ÐpÏÃÅÓÓy.)
áÇÁ. ðÏÉÚyÞÁÀ.
JA> ó ÄpÁÊ×ÅpÁÍÉ ×ÓÅ ÄÏ×ÏÌØÎÏ ÐpÏÓÔÏ É ÐÏÎÑÔÎÏ. éÍÅÀÔÓÑ ÔpÉ ×ÁpÉÁÎÔÁ:
JA> 1. ezusb.sys - General purpose USB device driver (Ó ÓÙpÃÁÍÉ) JA> 2. CyUSB.sys - USB device driver for Windows 2000 and XP (ÂÅÚ ÓÙpÃÏ×) JA> 3. HÁÐÉÓÁÔØ ÓÁÍÏÍy ÎÁ ÏÓÎÏ×Å ÓÙpÃÏ× 1-ÇÏ ÉÌÉ ÐpÉÍÅpÏ× ÉÚ MS DD SDK
JA> ðÏ pÅËÏÍÅÎÄÁÃÉÉ ÓÁÍÏÊ ÆÉpÍÙ Cypress Ñ ÉÓÐÏÌØÚyÀ ×ÔÏpÏÊ ×ÁpÉÁÎÔ ÉÚ ÉÈ JA> ÂÅÓÐÌÁÔÎÏÊ CY4604 - USB Developer's uStudio.
ôÁËÁÑ ÖÅ ÆÉÇÎÑ, ÉÓÐÏÌØÚyÀ CyUSB.sys.
JA> ïÔÌÉÞÎÏ pÁÂÏÔÁÅÔ, ÇÌÀËÏ×, JA> Ï ËÏÔÏpÙÈ yÐÏÍÉÎÁÀÔ ËÏÌÌÅÇÉ, ÐpÉÍÅÎÑ×ÛÉÅ ezusb.sys, ÚÁÍÅÞÅÎÏ ÎÅ ÂÙÌÏ. JA> ðpÉ ÐÏ×ÙÛÅÎÎÙÈ ÔpÅÂÏ×ÁÎÉÑÈ Ë ÓËÏpÏÓÔÑÍ ÐÅpÅÄÁÞÉ ÓÌÅÄyÅÔ ÉÓÐÏÌØÚÏ×ÁÔØ JA> pÅÖÉÍ asynchronous IO (Ô.Å. overlapped). ë ÜÔÏÍy ÄpÁÊ×Åpy ÐpÉÌÁÇÁÀÔ JA> ÐpÏÓÔÏÅ, ÄÏÓÔyÐÎÏÅ ÎÁÞÉÎÁÀÝÅÍy, É ÈÏpÏÛÏ pÁÂÏÔÁÀÝÅÅ API.
ëÁË ÏÎÏ pÁÂÏÔÁÅÔ - ÅÝÅ ÎÅ ÚÎÁÀ, ÐÏËÁ ÔÏÌØËÏ ÞÉÔÁÀ ÄÏËÉ :)
AL>> ÷ÏÐpÏÓ ×ÔÏpÏÊ, ÄypÁÃËÉÊ: ÜÔÏÔ ÞÉÐ yÍÅÅÔ ÇpyÚÉÔØÓÑ ÌÉÂÏ Ó ååðòïí, AL>> ÌÉÂÏ (ÅÓÌÉ ÐpÉ ÓÔÁpÔÅ ÎÅ ÎÁÛÅÌ ÅÅÐpÏÍËy) Ó ×ÎyÔpÅÎÎÅÊ RAM, × ËÏÔÏpyÀ AL>> ÐpÏÛÉ×ËÁ ÚÁÌÉ×ÁÅÔÓÑ ÏÐÑÔØ ÖÅ ÞÅpÅÚ USB.
JA> ÷ ÍÉËpÏÓÈÅÍy CY7C68013A ÐpÏÇpÁÍÍÁ ÍÏÖÅÔ ÚÁÌÉ×ÁÔØÓÑ ÞÅpÅÚ USB. ô.Å. ËÏÍÐ JA> ÍÏÖÅÔ ÐÏÓÌÁÔØ Vendor Request (ËÏÄ 0xA0 - ÚÁÇpyÚËÁ firmware) É ×ÙÐÏÌÎÉÔØ JA> ÚÁÇpyÚËy (ÉÌÉ ×ÙÇpyÚËy) ÐpÏÇpÁÍÍÎÏÊ ÐÁÍÑÔÉ RAM.
üÔÏ ÔÁË, yÇy.
JA> ðÏÓÌÅ ÜÔÏÊ ÏÐÅpÁÃÉÉ CPU ×ÙÈÏÄÉÔ ÉÚ pÅÓÅÔÁ É ÎÁÞÉÎÁÅÔ ×ÙÐÏÌÎÑÔØ JA> ÚÁÇpyÖÅÎÎyÀ ÐpÏÇpÁÍÍy.
ïÄÎÁËÏ, ÅÓÌÉ ÏÎ ÐpÉ ×ËÌÀÞÅÎÉÉ ÐÉÔÁÎÉÑ ÎÁÛÅÌ ÐÏÄÓÏÅÄÉÎÅÎÎyÀ ÅÅÐpÏÍËy É ÐpÏÛÉ×Ëy × ÎÅÊ, ÏÎ ÇpyÚÉÔÓÑ Ó ÎÅÅ - ÔÏÞÎÅÅ, ÐÅpÅÌÉ×ÁÅÔ ÐpÏÇpÁÍÍy ÉÚ ÅÅÐpÏÍ × Ó×ÏÀ ÐpÏÇpÁÍÍÎyÀ ÐÁÍÑÔØ RAM É ÐÏ ÎÅÊ pÁÂÏÔÁÅÔ. ôÁË yËÁÚÁÎÏ × ÄÏËyÍÅÎÔÁÃÉÉ É ÅÓÔØ ÎÁ ÓÁÍÏÍ ÄÅÌÅ.
JA> äÁÌÅÅ ÔÙ ÍÏÖÅÛØ ÄÅÌÁÔØ ÞÔÏ yÇÏÄÎÏ. ðÏ-ÍÏÅÍy, ÎÁ ÉÈ ÄÉÓËÅ (ÞÔÏ ÉÄÅÔ Ó JA> ËÉÔÏÍ) ÜÔÁ yÔÉÌÉÔËÁ ÉÍÅÅÔÓÑ (ÎÏ ÔÏÞÎÏ ÎÅ ÚÎÁÀ, ÏÎÁ ÍÎÅ ÐÏËÁ ÎÅ ÂÙÌÁ JA> ÎyÖÎÁ).
÷ÏÔ ÉÍÅÎÎÏ Ó ÐÏÍÏÝØÀ ÜÔÏÊ yÔÉÌÉÔÙ Ñ É ÚÁÌÉÌ × ÅÅÐpÏÍ ËÁËyÀ-ÔÏ ÆÉÇÎÀ, É ÔÅÐÅpØ ÐpÏÃÅÓÓÏp Ó ÎÅÅ ÎÅ ÇpyÚÉÔÓÑ - Ô.Å., ÐpÉ ÓÔÁpÔÅ Ó ÐÏÄËÌÀÞÅÎÎÏÊ ÅÅÐpÏÍ ÏÎ ÅÅ ÏÂÎÁpyÖÉ×ÁÅÔ, ÏÂÎÁpyÖÉ×ÁÅÔ × ÎÅÊ ÐpÏÛÉ×Ëy, ÐÅpÅÌÉ×ÁÅÔ ÐpÏÇpÁÍÍy ÉÚ ÅÐpÏÍËÉ × Ó×ÏÀ ÐpÏÇpÁÍÍÎyÀ RAM, ÐÏÓÌÅ ÞÅÇÏ ÓÔÁÎÏ×ÉÔÓÑ ÎÅ ×ÉÄÅÎ ÐÏ USB. ÷ÏÔ É ×ÏÐpÏÓ, ËÁË ÐÅpÅÐpÏÛÉÔØ ÅÅÐpÏÍ? úÁÇpyÚÉÔÓÑ ÂÅÚ ÎÅÅ, É ÐÏÄËÌÀÞÉÔØ "ÎÁ ÇÏpÑÞyÀ", ÐÏÓÌÅ ÞÅÇÏ ÐÅpÅÐpÏÛÉÔØ yÔÉÌÉÔÏÊ?
AL>> óÐÁÓÉÂÏ, ÉÚ×ÉÎÉÔÅ, ÅÓÌÉ ÇÄÅ ÆÉÇÎÀ ÓÐÏpÏÌ - ÞÁÊÎÉË Ñ × ÜÔÉÈ ÄÅÌÁÈ AL>> ÎÁÔypÁÌØÎÙÊ. JA> ëÁËyÀ ÆÉÇÎÀ? ðÅpÅÓÔÁÎØ, ×ÓÅ ÍÙ ÐpÏÈÏÄÉÍ ÜÔÁÐ ÞÁÊÎÉËÏ×, ÜÔÏ ÎÏpÍÁÌØÎÏ. JA> çÌÁ×ÎÏÅ ÐÏÔÏÍ ÎÅ ÚÁÂÙ×ÁÔØ, ÞÔÏ ÔÙ ÔÏÖÅ ËÏÇÄÁ-ÔÏ ÂÙÌ ÞÁÊÎÉËÏÍ! :-)
üÔÏ ÍÎÅ ÐÏËÁ ÎÅ ÇpÏÚÉÔ ;) óÐÁÓÉÂÏ ÚÁ ÓÏ×ÅÔÙ-ÏÔ×ÅÔÙ!
JA> àpÇÉÓ
ó ÎÁÉÌyÞÛÉÍÉ ÐÏÖÅÌÁÎÉÑÍÉ, Anton.
... [mailto: hi_tech(at)au.ru //change (at) to "@"]