📄 usb 2_0 interface details.mht
字号:
From: <由 Microsoft Internet Explorer 5 保存>
Subject: Homemade Harddisk MP3 Player USB 2.0 Interface Details
Date: Wed, 6 Oct 2004 12:35:00 +0800
MIME-Version: 1.0
Content-Type: multipart/related;
boundary="----=_NextPart_000_003C_01C4ABA0.E57EDC70";
type="text/html"
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1441
This is a multi-part message in MIME format.
------=_NextPart_000_003C_01C4ABA0.E57EDC70
Content-Type: text/html;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.frankvh.com/mp3player/usb2.htm
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD><TITLE>Homemade Harddisk MP3 Player USB 2.0 Interface =
Details</TITLE>
<META=20
content=3D"Homemade harddrive MP3 player homebuilt diskdrive MP3 player =
USB interface USB2 USB 2.0 USB Drive audio player stereo high capacity =
do it yourself mp3 player kit software sourcecode hardware schematic =
circuit diagram"=20
name=3Dkeywords><!-- InstanceBegin =
template=3D"/Templates/MP3CSStemplate.dwt" =
codeOutsideHTMLIsLocked=3D"false" --><!-- InstanceBeginEditable =
name=3D"head" --><!-- InstanceEndEditable --><!-- InstanceBeginEditable =
name=3D"doctitle" --><!-- InstanceEndEditable -->
<META http-equiv=3DContent-Type content=3D"text/html; =
charset=3Diso-8859-1"><LINK=20
href=3D"http://www.frankvh.com/mp3player/mp3style.css" type=3Dtext/css=20
rel=3Dstylesheet>
<META content=3D"MSHTML 6.00.2800.1400" name=3DGENERATOR></HEAD>
<BODY>
<DIV id=3DBannerLeft><IMG height=3D61 =
src=3D"http://www.frankvh.com/mp3player/mp3.gif"=20
width=3D175 align=3Dmiddle> </DIV>
<DIV id=3DBannerBody>Homebuilt MP3 Player </DIV>
<DIV id=3DBottomBanner>A do-it-yourself high-capacity harddisk-based MP3 =
Player=20
with USB 2.0 </DIV>
<DIV id=3DLeftMenu>
<P><A class=3Dmenu =
href=3D"http://www.frankvh.com/mp3player/index.html">Home</A></P>
<P><A class=3Dmenu=20
href=3D"http://www.frankvh.com/mp3player/hwdetails.htm">Hardware<BR>Descr=
iption</A></P>
<P><A class=3Dmenu=20
href=3D"http://www.frankvh.com/mp3player/schematics.htm">Schematics=20
&<BR>PCB</A></P>
<P><A class=3Dmenu=20
href=3D"http://www.frankvh.com/mp3player/software.htm">Software</A></P>
<P><A class=3Dmenu =
href=3D"http://www.frankvh.com/mp3player/kits.htm">Kits=20
&<BR>Parts</A></P>
<P><A class=3Dmenu=20
href=3D"http://www.frankvh.com/mp3player/driveselection.htm">Drive=20
Selection</A></P>
<P><A class=3Dmenu =
href=3D"http://www.frankvh.com/mp3player/usb2.htm">USB=20
2.0</A></P>
<P><A class=3Dmenu=20
href=3D"http://www.frankvh.com/mp3player/buildnotes.htm">Construction<BR>=
Notes</A></P>
<P><A class=3Dmenu =
href=3D"http://www.frankvh.com/mp3player/createmp3s.htm">Creating=20
MP3s</A></P>
<P><A class=3Dmenu =
href=3D"http://www.frankvh.com/mp3player/news.htm">Latest=20
News</A></P>
<P><A class=3Dmenu=20
href=3D"http://www.frankvh.com/mp3player/contact.htm">Contact</A></P>
<HR color=3D#000000 noShade SIZE=3D1>
<P> </P></DIV>
<DIV id=3DPageBody><!-- InstanceBeginEditable name=3D"EditRegion1" -->
<H2>USB 2.0 Interface </H2>
<P>The MP3 player implements a USB 2.0 =93mass storage class=94 =
interface. What this=20
means is that if you plug the player into a computer / OS that supports =
the mass=20
storage class, the player will appear as if it were a local harddrive. =
You can=20
then drag-and-drop files onto the player, delete files, etc. In fact =
you=92re not=20
limited to MP3 files; you can put whatever files you want on the player. =
Of=20
course the player will only attempt to play files with a =93.mp3=94 =
extension.</P>
<P>The actual mass-storage class interface is accomplished using a =
device from=20
Cypress Semiconductor, the CY7C68300A. It does everything, freeing the =
AVR=20
software from any knowledge of the complexities of this interface. In my =
testing=20
to date, with several harddrives connected to several PC's with =
different=20
operating systems, I've found this part to work extremely well.</P>
<P> </P>
<H3>OS Support and Drivers</H3>
<P>Operating systems that support the mass-storage class include =
WindowsME and=20
beyond. Windows98 supports it with the addition of a driver that can be=20
downloaded from the Cypress website <A=20
href=3D"http://www.cypress.com/support/software_download.cfm?objectID=3D3=
9F4EE8A-9D86-44CE-9A17EC8A3CEDC112&tid=3D0AC3D3A6-D363-4D3B-98ACB1807=
9FBE66B"=20
target=3D_top>here.</A> If you're having problems with that link =
(Cypress=20
regularly updates their site) then go to <A =
href=3D"http://www.cypress.com/"=20
target=3D_top>cypress.com</A> and search for the USB 2.0 drivers for =
their EZ-USB=20
AT2 family (chip partnumber is CY7C68300A). The Cypress drivers are not =
required=20
for WinXP although WinXP service pack 1 is.</P>
<P>Windows95 and DOS are not supported.</P>
<P>Some versions of Linux support it. Also many later Apple Macs support =
it. I=20
don=92t have any experience with either of these machines, so if =
you=92ve had=20
success, please let me know so I can post it here. Note that if you=92re =
a Linux=20
or Mac user, you=92ll have to find a way to initially format the drive =
with the=20
FAT32 filesystem, as described on <A=20
href=3D"http://www.frankvh.com/mp3player/driveselection.htm" =
target=3D_self>this=20
page.</A></P>
<P> </P>
<H3>Backwards Compatibility and Upgrades</H3>
<P>USB 2.0 is backwards compatible with USB 1.1, but a lot faster. USB =
1.1=20
(full-speed) runs at 12 Mbits/sec; USB 2.0 high-speed sprints along at =
480=20
Mbits/sec. My earlier rev 1.0 player had a USB 1.1 interface on it. For =
moving=20
large numbers of MP3 files it=92s painfully slow, which is why the =
current=20
revision of the player has the USB 2.0 interface. If you don=92t have =
USB 2.0 on=20
your computer I suggest you consider doing what I did and obtain a USB =
2.0 PCI=20
card. They're pretty cheap now. The one I purchased was the <A=20
href=3D"http://www.iogear.com/products/product.php?Item=3DGIC220U"=20
target=3D_top>IOGear GIC220U</A>. Installation was smooth and it seems =
to work=20
well for me. (Note that if you're using WinXP you'll need service pack 1 =
plus=20
the subsequent patch to enable USB 2.0 support).</P>
<P>Note again that USB 2.0 is backwards compatible with USB 1.1. You can =
plug=20
the player into a USB 1.1 PC and transfer files that way. But at around =
4 or 5=20
seconds per song you won=92t want to transfer too many MP3 files that =
way. A USB=20
2.0 PCI card can start looking attractive pretty quickly. I have tested =
the rev=20
2 player with a USB 1.1 port and verified that it does indeed work as =
expected.=20
It just runs slower.</P>
<P> </P>
<H3>USB Serial EEPROM Parameters & Multiple Players</H3>
<P>The Cypress CY7C68300A has a small serial eeprom hanging off it (U9) =
which=20
contains the board-specific parameters. Any eeproms I provide are=20
pre-programmed. For those who wish to program, or edit the programming, =
of this=20
part themselves, this is the file I use.</P>
<P align=3Dcenter><A =
href=3D"http://www.frankvh.com/mp3player/FrankMP3Rev2.w56"><IMG=20
height=3D36 src=3D"http://www.frankvh.com/mp3player/floppydisk.gif" =
width=3D34=20
border=3D0></A></P>
<P>The part is programmed using the ATBlaster software package, part of =
the <A=20
href=3D"http://www.cypress.com/cfuploads/support/reference_design/CY4615A=
_Sept_03.zip">CY4615A=20
design kit</A>, downloadable off the Cypress website. Note that this is =
a=20
"development" serial eeprom file, not a production file. It uses =
Cypress's=20
default VendorID number (because I don't have one; it's expen$ive to =
get) and=20
it's just one file which implies one serial number. According to the USB =
2=20
specification every part must have its own serial number, but I just =
program=20
this same file into every eeprom. If you want to have two of these =
players=20
plugged into the same PC <EM>at the same time</EM> you'll need to change =
the=20
serial number for one of them. For experimenting with USB ports, as this =
MP3=20
player kit does, it's more than adequate.</P>
<P>For more details on programming the serial eeprom refer to my <A=20
href=3D"http://www.frankvh.com/mp3player/atblaster.htm">ATBlaster =
page</A>.</P><!-- InstanceEndEditable -->
<HR color=3D#0000cc noShade>
<TABLE width=3D"100%" border=3D0>
<TBODY>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -