📄 usb ad9245.mht
字号:
href=3D"http://ccar.colorado.edu/opengps/usb/fx2_programmer.c">fx2_progra=
mmer.c</A>=20
- Compile and copy binary somewhere=20
<LI><A href=3D"http://libusb.sourceforge.net/">libusb</A> - USB =
library=20
(<CODE>emerge libusb</CODE>) </LI></UL><A name=3Dtoc7></A>
<H2>3.2. Install + Compile</H2>
<P>Download the above files (install sdcc first, obviously). Then =
make=20
some directory in your home dir and extract there: </P><PRE>cd ~
mkdir usb && cd usb
wget http://ccar.colorado.edu/opengps/usb/usrp-0.8-swighack.tar.bz2
wget http://ccar.colorado.edu/opengps/usb/adcstream.tar.bz2
tar xjvf usrp-0.8-swighack.tar.bz2
tar xjvf adcstream.tar.bz2
cd usrp-0.8-swighack
./configure && make
cd ../adcstream/firmware/lib && make
cd ../src && make
cd ../../host && make
</PRE>
<P>At this point there are two binaries that you care about: </P>
<OL>
<LI>adcstream/firmware/src/radar_firmware.ihx - firmware for the =
8051=20
<LI>adcstream/host/rx - host-side receive software </LI></OL><A=20
name=3Dtoc8></A>
<H2>3.3. Program</H2>
<P>To upload the firmware to the host (make sure to follow =
power-on=20
procedure described above), just type </P><PRE>cd =
adcstream/firmware/src/
make program
</PRE>
<P>This will scan the USB for the FX2 device and upload the hex =
file that=20
you just compiled to it. Output should look something like this: =
</P><PRE>Using device 048 on bus 005 vendor id 0x04b4 product id 0x0081
Using file "radar_firmware.ihx"
Programming 6 bytes starting at 0x0000, checksum ok
Programming 3 bytes starting at 0x000b, checksum ok
Programming 3 bytes starting at 0x0013, checksum ok
Programming 3 bytes starting at 0x001b, checksum ok
Programming 3 bytes starting at 0x0023, checksum ok
--- snip ---
Programming 10 bytes starting at 0x0b7c, checksum ok
End of file
Using device 048 on bus 005 vendor id 0x04b4 product id 0x0081
Firmware upload done - 8051 running
</PRE>
<P>Now the red D2 LED on the FX2 should start flashing ON/OFF at =
about 1Hz=20
(this indicates that the firmware loaded correctly). </P>
<P>Note that <CODE>make program</CODE> assumes you are <B>not =
root</B> and=20
invokes the <CODE>sudo</CODE> command. If you don't have sudo, or =
just=20
want to program as root, edit the makefile in =
<CODE>firmware/src</CODE> to=20
not run sudo. </P><A name=3Dtoc9></A>
<H2>3.4. Download ADC data</H2>
<P>After programming the FX2 chip, we are now ready to download =
some ADC=20
samples from it: </P><PRE>cd ~/usb/adcstream/host
sudo nice -n -20 ./rx -o /tmp/adc.bin
</PRE>
<P>By default this will grab a 1GB (1024MB) dataset. =
<CODE>Ctrl-C</CODE>=20
can be pressed at any time to abort the transfer - when you do =
this,=20
output should look something like this: =
</P><PRE>[esterhui@tunesmith host]$sudo nice -n -20 ./rx -o /tmp/adc.bin
fusb::_reap: Interrupted system call
xfered 523 MB in 13.7 seconds. 38.16 MB/s. cpu time =3D 2.212
</PRE>
<P>We <CODE>nice</CODE> it to the highest priority so that the =
user-side=20
linux scheduler give us as much time on the CPU as possible. Also, =
this=20
host-side binary need to run as root. </P><A name=3Dtoc10></A>
<H2>3.5. Viewing data in MATLAB</H2>
<P>This data is saved as <CODE>unsigned 16 bit</CODE>. Remember =
that bit=20
15 is tied to ground and bit 14 is over range detect flag (active =
high).=20
Read it in MATLAB as follows: </P><PRE>fclose all; =
fid=3Dfopen('/tmp/adc.bin','rb'); data=3Dfread(fid,1e6,'uint16')
</PRE>
<P></P>
<P>Currently the buffer on the FX2 is not being cleared between =
downloads=20
- I have not found a clean way to do this yet, so for now just =
accept that=20
the first ~4MB of data might be bad. </P><A name=3Dtoc11></A>
<H2>3.6. Troubleshooting</H2>
<P>If you run the <CODE>rx</CODE> program and ctrl-C doesn't do it =
for you=20
(the program doesn't quit), you have probably not followed the =
hardware=20
setup procedure above closeley (or your input clock isn't =
working). In a=20
case like this, type in <CODE>ctrl-Z</CODE> to stop the job, then =
do a=20
<CODE>killall lt-rx</CODE> (as root), which will kill your =
<CODE>rx</CODE>=20
application. </P></DIV><!-- FOOTER -->
<DIV class=3Dfooter>
<P class=3Dsmalltext><A =
href=3D"http://ccar.colorado.edu/opengps">OpenGPS</A>=20
| <A href=3D"http://www.colorado.edu/">University of Colorado</A> =
</P>
<P=20
=
class=3Dsmalltext>U N I V E R S I =
;T Y O F C O L O R&nb=
sp;A D O =20
</P>
<P class=3Dsmalltext><A class=3Dsmalltext=20
=
href=3D"mailto:stephan.esterhuizen@colorado.edu">stephan.esterhuizen@colo=
rado.edu</A>=20
<BR><A class=3Dsmalltext =
href=3D"http://www.colorado.edu/legal.html">Copyright=20
=C2=A9 2006</A> - The Regents of the University of Colorado =
</P></DIV>
<P class=3Dsmalltext>Last modified: Thursday, 18-Aug-2005 21:54:46 =
MDT </P><!-- BODY_END --></TD></TR></TBODY></TABLE></BODY></HTML>
------=_NextPart_000_001A_01C6E0AE.F9B7EE30
Content-Type: image/png
Content-Transfer-Encoding: base64
Content-Location: http://ccar.colorado.edu/opengps/img/opengps4_logo.png
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
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -