Avr robot controller 1.1 hardware description, Power, I/o pins – SRS Labs SRS Robot Level 1 Kit User Manual
Page 31

AVR Robot Controller 1.1 Hardware Description
AVR Robot Controller 1.1 Hardware Description
The Level 1 Robot Kit ships with an ATmega16 microcontroller. The Atmel AVR microcontrollers are designed to
be pin- and code-compatible where possible. In this case, for example, you could substitute an ATmega8535 or
ATmega32. These chips will all function in the ARC board with minimal software changes (typically just a re-
compile), the primary difference being the amount of internal memory available. Please see Atmel’s site
(www.atmel.com) for a list and descriptions of available devices.
Power
Power can be any source from 6-24 volts DC. Pay attention to the polarity symbols near the power plug -- ground is
in the center, with +V applied at either end. The ARC board is protected against battery reversal with a diode. This
diode reduces the available power to the board and prevents destruction of the H-Bridge in case of accidental battery
reversal. If you want, you can use a polarized battery connector and solder it directly to the board and replace the
diode with a bare wire.
I/O Pins
The ATmega16 microcontroller has four 8-bit I/O ports and many peripheral functions that work through these I/O
pins. Port A also doubles as the analog input port. Port D doubles for many of the built in functions like serial I/O,
PWM and timers. Port B doubles as the programming interface.
The following table lists the I/O pins that are brought out to headers on the ARC board. (The expansion headers JP3
and JP10 are not included since they bring out all I/O port bits as well as power and ground.) Connection lists what
device or feature the robot communicates with. Physical Pin is the connection to the ATmega16. Functional Name
indicates how each connection is used in the programs. Input/Output describes the communication direction as
viewed from the ATmega16. Header is the text identifying that connection on the board. (See the schematic for pin
details.)
Connection
Physical
Pin
Functional
Name
Input/
Output
Header
Left bump sensor
PA0
PA0
input
LEFT (at front of board)
Right bump sensor
PA7
PA7
input
LEFT (at front of board)
Left distance sensor (Level 2)
PA0
ADC0
input
RIGHT (at front of board)
Right distance sensor (Level 2)
PA7
ADC7
input
RIGHT (at front of board)
Left light sensor
PA1
ADC1
input
LF (“left floor”)
Center light sensor (not included with kit) PA2
ADC2
input
CF (“center floor”)
Right light sensor
PA3
ADC3
input
RF (“right floor”)
Left motor direction
PC3
PC3
output
LEFT (at back of board)
Left motor PWM
PD4
OC1B
output
LEFT (at back of board)
Left motor channel A (encoder, Level 3)
PD3
INT1
input
LEFT (at back of board)
Left motor channel B (encoder, Level 3)
PC2
PC2
input
LEFT (at back of board)
Left servo (not included with kit)
PC2
PC2
output
LEFT (at back of board)
Right motor direction
PC4
PC4
output
RIGHT (at back of board)
Right motor PWM
PD5
OC1A
output
RIGHT (at back of board)
Right motor channel A (encoder, Level 3) PD2
INT0
input
RIGHT (at back of board)
Right motor channel B (encoder, Level 3) PC5
PC5
input
RIGHT (at back of board)
Right servo (not included with kit)
PC5
PC5
output
RIGHT (at back of board)
Serial input
PD0
RXD
input
JP5
Serial output
PD1
TXD
output
JP5
Green “program” LED
PB4
PB4
output
PROG (green LED)
Option A
PB6
PB6
ISP/JP9, A
Option B
PB7
PB7
ISP/JP9, B
Option C
PB4
PB4
ISP/JP9, C
11-3-2005
31