Revision: September 4, 2010
Note: This document applies to REV C of the board.
™ UUSSBB
l
Overview
The Digilent I/O Explorer USB is a USB
peripheral device that allows programmatic
access from a personal computer to various
external Input/Output (I/O) devices.
Using the Digilent Adept Software Developer’s
Kit (SDK) and the Digilent Adept Runtime
System it is possible to write application
programs running under either the Microsoft
Windows or Linux operating systems that
perform various kinds of I/O operations to
devices on the I/O Explorer board itself, or
through the I/O Explorer to devices external to
the computer.
The I/O Explorer provides a number of I/O
devices on the board itself, as well as RC
servo connectors, and Digilent Pmod
connectors that allow access to devices
external to the I/O Explorer.
In addition to its use as a dedicated USB
peripheral device, the I/O Explorer can also be
used as a microcontroller development board.
It features two Atmel AVR microcontrollers,
one having USB device capability. Digilent
makes available the firmware images needed
to restore it to the factory configuration as a
USB peripheral device if it has been
reprogrammed with user defined firmware.
Features include:
• two Atmel AVR microcontrollers:
AT90USB646 and ATmega165P
• USB 2.0 Full Speed device
• fully software compatible with the
Digilent Adept Runtime system
• C/C++/C#/Visual Basic callable API set
using the Digilent Adept System
Software Developer’s Kit (SDK)
• 5 12-pin and 1 6-pin Pmod connectors
• 16 discrete LEDs
• 8 slide switches
• 4 push button switches
215 E Main Suite D | Pullman, WA 99163
(509) 334 6306 Voice and Fax
USB I/O Explorer Block Diagram
Doc: 502-174 page 1 of 17
Copyright Digilent, Inc. All rights reserved. Other product and company names mentioned may be trademarks of their respective owners.
USB I/O Explorer Reference Manual
• 4 position DIP switch
• 2 rotary encoders with integral push
button
• speaker/buzzer
• two 10-bit A/D inputs
• four 12-bit D/A outputs
• up to 52 digital input/output pins
• connectors for up to 8 RC servos
• 1 hardware SPI master port
• up to 3 additional software SPI master
ports
• UART interface port
• provision for 4 additional RC servos
using Digilent PmodCON3
• provision for 2 additional quadrature
encoders via Pmod connector
• provision for up to 8 additional 10-bit
A/D inputs using servo connectors
• multiple power supply options, including
USB powered
• ESD protection and short circuit
protection for all I/O pins.
Functional Description
The Digilent USB I/O Explorer is a
microcontroller board that is designed to be
used as a USB peripheral device to expand the
I/O capabilities of a PC running either the
Microsoft Windows operating system or the
Linux operating system. The Digilent Adept
Software System provides the run-time
software for operation of the board, and the
Digilent Adept Software Development Kit
(SDK) allows the user to write custom
application software to access and control its
features. The Digilent Adept SDK comes with a
variety of sample programs that illustrate
operation of various features of the I/O
Explorer.
The I/O Explorer provides a number of built-in
I/O devices, such as switches, push buttons,
LEDs, rotary encoders, and a speaker/buzzer.
It also provides a number of connectors that
allow access to and control of devices external
to the I/O Explorer.
Operation of the I/O Explorer board as a
Digilent Adept compatible device requires the
www.digilentinc.com page 2 of 17
Copyright Digilent, Inc. All rights reserved. Other product and company names mentioned may be trademarks of their respective owners.
installation of the Digilent Adept software
available for download from the Digilent web
site: www.digilentinc.com. In addition to
downloading and installing the Digilent Adept
software, the Digilent Adept SDK must be
downloaded and installed in order to make
effective use of the board.
In addition to the Digilent Adept SDK, the user
will require some software development tool
that allows writing application programs on the
target operating system. The Digilent Adept
System uses the C programming language
calling conventions and any development tool
that provides the ability to call C functions in a
DLL (on Windows) or a shared library (on
Linux) can be used. Some version of Microsoft
Visual Studio is commonly used on Windows,
and some version of the GCC tool chain is
normally used on Linux.
In addition to the primary design purpose of
being a dedicated USB peripheral device, the
I/O Explorer can also be used as a
microcontroller development board. The I/O
Explorer contains two Atmel AVR
microcontrollers: IC1, the primary
microcontroller is an AT90USB646 AVR
microcontroller with USB capability; IC2, the
secondary microcontroller is an ATmega165P
AVR device.
Development of custom firmware to run on the
I/O Explorer requires the use of some
development tool that supports the Atmel AVR
microcontroller family. The most common tool
used is the free Atmel AVR Studio IDE and
assembler available for download from the
Atmel web site. The free GCC based WinAVR
C compiler system can be used with Atmel’s
AVR Studio and provides a very powerful C
language programming environment. WinAVR
is available for free download from the internet
from various sources.
In addition to the development tool software,
using the I/O Explorer as a microcontroller
development platform requires a programming
cable, or in-system-debugger to load the user
firmware into the microcontroller. The I/O
Explorer is designed to allow use of the Atmel
USB I/O Explorer Reference Manual
JTAG-ICE mk II or the Atmel AVR Dragon for
in-system debug. In-system programming is
normally accomplished using a Digilent
programming cable, either the Digilent JTAGUSB Programming Cable, or the Digilent
JTAG-USB Full Speed Module. The use of an
Atmel ISP In System Programmer is also
supported with the use of a suitable flying-lead
cable (e.g. Digilent 6 Pin MTE Cable) to
convert from the Digilent 1x6 programming
connector convention to the Atmel 2x3
connector convention.
For additional information useful in developing
custom firmware for the board, the complete
schematic is available on the Digilent web site.
Power Supply
The I/O Explorer may be used either as a USB
bus powered device or as a self powered
device. Jumper JP6 is used to select between
these two options. Install a shorting block in
the VUSB position for USB bus power. Install a
shorting block in the VEXT position for self
power.
Power switch, SW10, is used to turn board
power on or off. Ensure that the power switch
is in the ON position to operate the board.
When operating as a bus powered device, care
should be taken in powering devices external
to the I/O Explorer. The 5V USB bus power
supply is available at the Pmod connectors and
other points on the board. Care should be
taken not to exceed the 500mA current limit
that USB bus powered devices are allowed to
consume. Care should particularly be taken not
to short the USB 5V supply to ground or
external voltage supplies as this could result in
damage to the USB hub or PC motherboard to
which the I/O Explorer is connected.
When operating as a self powered device,
there are three power supply connectors on
the I/O Explorer for connecting the external
power supply: J13, J14, and J15. These three
connectors are wired in parallel and only one
of the three should be used at a time.
The barrel connector, J13, will normally be
used for desktop applications as a self
powered device. J13 is the connector used by
the AC supply adapter optionally available from
Digilent, or other sources. J13 is a 2.5mm x
5.5mm coaxial connector wired with the center
terminal as the positive voltage.
J14 is a screw terminal connector for use with
higher current battery packs, bench supplies or
other power sources where use of a hard wired
power supply is desirable.
J15 is a two-pin male header that provides
easy battery or battery-pack connection.
Digilent has both two-cell and four-cell AA
battery holders with two pin connectors
available for connection to J14.
The main operating voltage of the I/O Explorer
can be selected between one of two voltages.
Jumper JP7 is used to select between these
two voltages. With JP7 in the 3V3 position, the
main board power bus is powered from the
output of the 3.3V main power supply regulator
on the board. When JP7 is in the 5V0 position,
the main power supply regulator is bypassed,
and the main board power bus is powered
directly from the applied supply voltage. When
operating as a USB bus powered device, this
will be the USB bus 5.0V power supply. When
operating as a self powered device, this will be
the voltage of the external supply. In this case,
the external supply should not exceed 5.5V or
damage to the board will result.
The main power supply regulator on the I/O
Explorer is rated for external power from 3.6 to
9 volts DC. Using a voltage outside this range
could damage the board and connected
devices.
The I/O Explorer has a second screw terminal
connector, J10 that supplies power to the
servo power bus, VS, to power the RC hobby
servo connectors. This allows servos to be
powered from a separate power supply than
the one powering the electronics on the I/O
Explorer. This can be useful when using
servos that require large amounts of power.
See the section on Servo Connectors below for
www.digilentinc.com page 3 of 17
Copyright Digilent, Inc. All rights reserved. Other product and company names mentioned may be trademarks of their respective owners.
USB I/O Explorer Reference Manual
a discussion of the options available for
powering the VS bus.
Jumper JP3 can be used to connect the I/O
Explorer unregulated power bus VU to the
servo power bus, VS. When no shorting block
is installed on JP3, the VU and VS busses are
separate. When a shorting block is on JP3,
the two busses are joined and the VU bus can
be powered in any of the previously indicated
ways, or from connector J10.
The I/O Explorer can provide power to any
peripheral modules attached to the Pmod
connectors and to I2C devices powered from
the I2C daisy chain connector, J12.
Each Pmod connector provides power pins
that can be powered from either unregulated
voltage, VU, or regulated voltage, 3V3, by
setting the voltage jumper block to the desired
position. Note that when the operating voltage
select jumper JP7 is in the 5V0 position, the
USB or external power supply voltage will be
supplied to the Pmod connectors regardless of
the position of the voltage select jumpers at the
connectors.
The I2C power connectors provides 3.3V when
the main board operating voltage (selected by
JP7) is 3.3V, or the external supply voltage
when JP7 is in the 5V0 position.
The 3.3V supply provided to the Pmod and I2C
connectors is provided by the onboard voltage
regulator. This regulator is capable of providing
a maximum of 500mA of current. The circuitry
on the I/O Explorer will consume less than
100mA in normal operation. The remaining
current is available to provide power to
attached Pmod and I2C devices. The
regulator is on the bottom of the board, near
the power connectors, and will get warm when
the amount of current being used is close to its
limit.
USB Operation
When operating using the normal factory
firmware, the I/O Explorer functions as a USB
operation requires installation of the Digilent
Adept Runtime software system, and it is
accessible to applications software developed
using the Digilent Adept Software Developer’s
Kit (SDK). The Digilent Adept Software
Developer’s Kit and the Digilent Adept Runtime
system is available for download from the
Digilent web site: www.digilentinc.com
By replacing the factory firmware with end-user
developed firmware, the I/O Explorer can
function as a user defined USB device.
The primary microcontroller (AT90USB646)
contains a USB 2.0 Compliant, Full Speed
Device controller. Refer to the Atmel data
sheet for the AT90USB646 and the USB 2.0
Specification for information on developing
USB device firmware.
On Board I/O Devices
The I/O Explorer provides the following I/O
Devices on the board:
• 8 Slide switches
• 4 Push button switches
• 4 Position DIP switch
• 16 Discrete LEDs
• 2 Rotary encoders with integral
push buttons
• Speaker/Buzzer
When operating the I/O Explorer using the
factory firmware, these devices are accessible
using the DGIO API set as described in the
DGIO Programmer’s Reference Manual
contained in the Digilent Adept SDK. Refer to
the section Digilent Adept Port Descriptions
below for details on the ports used for access
to the on-board I/O devices.
When operating the I/O Explorer with user
defined firmware, these devices are accessible
from the primary microcontroller via a private
I2C bus described below. All of these on-board
I/O devices are connected to the secondary
microcontroller and custom firmware written for
the secondary microcontroller can access them
directly.
2.0 compliant full speed device. Normal
www.digilentinc.com page 4 of 17
Copyright Digilent, Inc. All rights reserved. Other product and company names mentioned may be trademarks of their respective owners.
USB I/O Explorer Reference Manual
Pmod Connectors
The I/O Explorer has six Pmod connectors for
connecting Digilent Pmod peripheral modules.
There are two styles of Pmod connector: sixpin and twelve-pin. Both connectors use
standard pin headers with 100mil spaced pins.
The six-pin connectors have the pins in a 1x6
configuration, while the twelve-pin connectors
use a 2x6 configuration. The six-pin
connectors provide four I/O signals, ground
and a switchable power connection. The
twelve-pin connectors provide eight I/O
signals, two power and two ground pins. The
twelve-pin connectors have the signals
arranged so that one twelve-pin connector is
equivalent to two of the six-pin connectors.
The power connection is switchable between
the regulated 3.3V main board supply and the
unregulated input supply.
When operating the I/O Explorer using the
factory firmware, the Pmod connectors are
accessible via a number of the API sets
provided by the Digilent Adept SDK. In addition
to the other ways that they can be used, the
I/O pins on the Pmod connectors can be
accessed for direct pin input or output using
the DPIO API functions described in the DPIO
Programmer’s Reference Manual contained in
the Digilent Adept SDK. Refer to the section
Digilent Adept Port Descriptions below for
information on the various ways that the Pmod
connectors are used.
Digilent Pmod peripheral modules can either
be plugged directly into the connectors on the
I/O Explorer or attached via cables. Digilent
has a variety of Pmod interconnect cables
available.
See the “Connector and Jumper Block Pinout
Tables” section below for more information
about connecting peripheral modules and other
devices to the I/O Explorer. These tables
describe the relationship between the various
Adept software interfaces and the signals
available on the connector pins.
Analog Inputs and Outputs
The I/O Explorer provides analog input
channels and analog output channels via
Analog to Digital (A/D) and Digital to Analog
(D/A) converters on the board. When using the
factory firmware, these analog inputs and
outputs are accessed using the DAIO API
functions provided by the Digilent Adept SDK
and described in the DAIO Programmer’s
Reference Manual.
The A/D converters for the analog input
channels are provided by the built-in A/D
converters in the two microcontrollers.
The two analog input channels accessible
through DAIO port 0 are provided by the A/D
converter in the primary microcontroller. This
port supports single sample input mode as well
as continuous sampling input mode. These two
analog input channels have input protection
diodes to protect from out-of-range input
voltages and band limiting input filters with a
cutoff frequency of 2Khz. This port supports
sample rates up to 4K samples per second.
This analog input port supports two selectable
internal voltage references (2.56V and 3.3V)
as well as an external reference that can be
applied to the AREF1 pin on connector J2.
The analog inputs for DAIO port 0 are
accessed via connectors JF and J1.
The eight analog input channels accessible
through DAIO port 1 are provided by the A/D
converter in the secondary microcontroller.
This port supports only single sample input
mode. The inputs on this port are available
using the servo connectors S1-S8. These
connectors and the corresponding I/O pins on
the microcontroller are shared between DAIO
port 0, DPIO port 6, and DEMC port 3.
This analog input port supports two selectable
internal voltage references (1.1V and 3.3V) as
well as an external reference that can be
applied to the AREF2 pin on connector J5.
www.digilentinc.com page 5 of 17
Copyright Digilent, Inc. All rights reserved. Other product and company names mentioned may be trademarks of their respective owners.
USB I/O Explorer Reference Manual
The four analog output channels accessible
through DAIO port 2 are provided by a
Microchip MCP4728 serial D/A converter. This
port supports only single sample output mode.
The analog outputs for DAIO port 2 are
accessible via connectors JF and J1.
This analog output port supports two
selectable voltage references (2.048V and
3.3V).
UART Interface
The I/O Explorer provides a Universal
Asynchronous Receiver/Transmiter (UART)
interface for asynchronous serial
communications.
The I/O signals for the UART interface are
provided on Pmod connector JG. When using
the factory firmware, the UART interface is
accessed using the DACI API functions
provided in the Digilent Adept SDK and are
described in the DAIO Programmer’s
Reference Manual. The UART interface is
accessed as DACI port 0.
The signals provided at connector JG are logic
level signals. If RS232 signal levels are
required, a Digilent PmodRS232 can be
attached to connector JG to provide the level
translation and a DB9 connector for connection
to standard RS232 serial devices.
RC Servo Connectors
The I/O Explorer provides eight 3-pin RC
hobby servo connectors for direct control of
servos in embedded hardware actuator
applications. The servo connectors are
labeled S1-S8 and are accessible via the
Adept system DEMC servo interface. When
programmed directly, the servo connectors are
connected to the secondary microcontroller.
The servo connectors S1-S8 are accessible via
DEMC port 3.
In addition to the on-board servo connectors, a
second servo port, DEMC port 4, provides four
additional servo channels. This servo port can
be used with a Digilent servo connector
module, PmodCON3, connected to pins 7-12
of Pmod connector JE.
RC servos use a pulse width modulated signal,
PWM, to control the servo position. When
directly programming the secondary
microcontroller, the servo connectors on the
I/O Explorer board are intended to be driven
using timer interrupts rather than directly by the
pulse width modulators in the internal timers.
Digilent has a reference design available that
illustrates using timer interrupts to control
signal timing for the PWM signals to control RC
servos.
There are three power options for servo
connections: a common power bus (VU) for the
I/O Explorer and servos; separate on-board
power busses for the I/O Explorer (VU) and the
servos (VS); or an on-board power bus for the
I/O Explorer (VU) an external power bus for
servos.
For the first case above: Install a shorting
block on JP3 to connect the VS servo power
bus to the VU power bus. The servo power
bus is then powered from the same source as
the VU power bus. Powering a large number
of servos from USB power is not
recommended. USB should only be used to
power a couple of servos to avoid exceeding
the 500mA that a USB device is allowed to
use.
For the second case above: Remove the
shorting block from jumper JP3 to make the VS
servo power bus independent from the VU bus.
In this case, the VS bus is powered from screw
terminal connector J10.
Finally, for very high servo current applications,
a separate power bus external to the I/O
Explorer can be used to provide servo power.
In this case, remove the shorting block on JP1,
tie the external servo power bus ground to the
I/O Explorer ground through the ground
terminal on J10, and use pin 1 on the servo
connectors to bring the servo control signals
out to the servos. The servo power and
ground connections are made off-board.
www.digilentinc.com page 6 of 17
Copyright Digilent, Inc. All rights reserved. Other product and company names mentioned may be trademarks of their respective owners.
Loading...
+ 11 hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.