1
0
mirror of git://projects.qi-hardware.com/ben-wpan.git synced 2024-11-26 12:45:21 +02:00

added clock frequency test for atusb and updated documentation

- prod/atusb: added clock frequency test
- prod/doc/setup.hmac: added GSL (libgsl) build dependency
- prod/doc/setup.hmac: recommend use of NTP on the PC
- prod/doc/test.hmac: added atusb to the clock frequency section
This commit is contained in:
Werner Almesberger 2011-05-30 20:04:54 -03:00
parent 9515d96c24
commit c8e942f9ee
3 changed files with 23 additions and 4 deletions

View File

@ -4,6 +4,7 @@
USB_ID=20b7:1540 USB_ID=20b7:1540
CLOCK_DRIFT_PPM=50
enumerate() enumerate()
@ -31,7 +32,8 @@ gpio_usb()
xtal_usb() xtal_usb()
{ {
step "Crystal frequency" step "Crystal frequency"
todo cmd "$LOCAL_EXEC atrf-xtal -d $LOCAL_DUT -p $CLOCK_DRIFT_PPM"
expect_re ppm # we catch any problems via the exit code
} }

View File

@ -43,7 +43,7 @@ and the test scripts have to be installed on the PC. For flashing the
firmware, also dfu-util and the firmware binary are required. firmware, also dfu-util and the firmware binary are required.
<P> <P>
The instructions below assume that a complete development environment The instructions below assume that a complete development environment
is already present on the PC, including SDL and SDL_gfx. is already present on the PC, including SDL, SDL_gfx, and GSL.
If any prerequisites are not met, If any prerequisites are not met,
compilation will fail, and you'll have to install the corresponding compilation will fail, and you'll have to install the corresponding
package and try again. package and try again.
@ -111,6 +111,21 @@ it from source.
<!-- ---------------------------------------------------------------------- --> <!-- ---------------------------------------------------------------------- -->
<SUBSECTION title="Install and run NTP">
The clock frequency test for <B>atusb</B> measures the clock frequency
relative to the PC clock. Many PC clocks are highly inaccurate, which
would render the result of the measurement meaningless. To improve the
quality of the reference clock, it should be disciplined by NTP.
<P>
If NTP is not available, it may be necessary to increase the test's
tolerance by changing the variable <SAMP>CLOCK_DRIFT_PPM</SAMP> in
the script <SAMP>atusb</SAMP>.
<!-- ---------------------------------------------------------------------- -->
<SUBSECTION title="Install firmware binary"> <SUBSECTION title="Install firmware binary">
The binary of the application running on <B>atusb</B> is transferred from The binary of the application running on <B>atusb</B> is transferred from

View File

@ -73,7 +73,7 @@ for an <B>atusb</B> DUT. It performs the following steps:
<LI>LED (<B>atusb</B> only; not yet implemented) <LI>LED (<B>atusb</B> only; not yet implemented)
<LI>GPIO scan (not yet implemented) <LI>GPIO scan (not yet implemented)
<LI>Identification <LI>Identification
<LI>Crystal frequency (only implemented on <B>atben</B>) <LI>Crystal frequency
<LI>Spectrum <LI>Spectrum
<LI>Receive <LI>Receive
<LI>Send <LI>Send
@ -137,12 +137,14 @@ eventually provide more detailed results for problems with the SPI interface.
<!-- ---------------------------------------------------------------------- --> <!-- ---------------------------------------------------------------------- -->
<SUBSECTION title="Crystal frequency (atben only)"> <SUBSECTION title="Crystal frequency">
This test measures the frequency of the crystal oscillator in the DUT. This test measures the frequency of the crystal oscillator in the DUT.
On <B>atben</B>, it does this by transmitting packets, and measuring On <B>atben</B>, it does this by transmitting packets, and measuring
the time between the SLP_TR pulse that starts the transmission and the the time between the SLP_TR pulse that starts the transmission and the
interrupt signaling the end of the transmission. interrupt signaling the end of the transmission.
On <B>atusb</B>, the microcontroller counts the clock cycles and the
number of cycles is compared with the PC's NTP-disciplined clock.
<P> <P>
If this test fails, this may indicate that the load capacitors of the If this test fails, this may indicate that the load capacitors of the
crystal are missing, badly soldered, or have the wrong value. It could crystal are missing, badly soldered, or have the wrong value. It could