Cybot Processor 1 Board

This
is the circuit diagram of the Processor 1 Board, it uses an Elan EM78P459
processor. Unfortunately, being a
mask programmed (or at least an OTP) micro-controller, it's difficult to really know how it
works, as it's entirely dependent on the internal programming. However, we
can make some reasonably educated guesses!.
As
there's no external oscillator components (other than a 30K resistor to
the OSCI pin), this presumably means it's using it's internal oscillator
(unless there's a capacitor hidden away somewhere?). Checking with an
oscilloscope on pin 22 (OSCI) shows no oscillation, so that seems to
confirm it's using the internal RC oscillator.
The
outputs to the motor driver board are on pins 15, 16, 17, and 23, while
two of these are PWM enabled, they appear to be using software PWM.
Checking with the oscilloscope shows that Cybot is
running at half speed in light following mode (50% duty cycle on pins 15
and 17), presumably the PWM hardware isn't used as it wouldn't be possible
to provide speed control in both directions with the existing driver
hardware.
The
inputs from the LDR's are on pins 9 and 10, and although these pins are
capable of being used as A2D converters, they appear to be simply used as
digital inputs to time how long it takes to charge the two capacitors
(C10, C11 on the I/O board) through the LDR's, the associated discharge resistors
are R21, R22 also on the I/O board. Again, checking with the
oscilloscope shows a narrow ramp waveform on these pins, which gets wider
as you restrict light to the LDR's - more resistance, longer charging
time.
The
two resistors R6 and R7 look to be the pull-up resistors for an I2C type
bi-directional bus, presumably this will be used to communicate
between the various processors as Cybot develops?. The six pin connector
also carries the GND, 6V and 5V rails, plus the reset line for the
processor - this has caused problems on some boards, and it's been
suggested that plugging a 47K 1/8W resistor between pins 6 (Reset) and 3
(+5V) will help to make the board work - to date there's been no official
announcement, but my board seems much! happier with it fitted!. According to the
datasheet 47K is actually too high, they specify no greater than 40K, and
anything from 40K down to a shorting link should be fine. It's extremely
bad practice to leave the reset pin floating, and presumably there will be
a pull-up on one of the later boards - or perhaps a complete 'brown-out'
circuit.
Following
the release of the Processor 2 board, I've been doing some more tests on
the bus between the processors, pin 4 appears to be the clock, and pin 5
the data, and it's not a standard I2C interface, with I2C both lines are
normally high, and processors 'call' for attention by bringing them low -
this isn't done, the data line is normally high, but the clock line is
normally low. In 'line following' and 'light seek' modes you only get a
short burst of data, as the mode switch setting is fed back to the
Processor 1 board - however, in sonar modes there is a regular stream of
data, with sixteen positive clock pulses on pin 4, and the associated data
on pin 5. This data changes every few seconds, following a 'beep' from
Cybot, to one of two different values, but it's hard to know what's going
on without the rest of the sonar hardware due to arrive in issue 14.
This
leaves two other components, C2 - which is a power supply decoupling
capacitor, and R9, which is fed from pin 13, and along with pin 12 feeds
the BZ socket on the I/O board. Presumably BZ means 'buzzer', and is the
connection for Cybot's piezo loudspeaker? - the 1K resistor will limit the
current drawn by this device. Feeding the piezo speaker from 2 pins allows
it to be fed with double the voltage, by taking one pin low, and the other
high, then reversing them, it gives 10v p-p drive for the sounder, from a
5v supply - this is known as a 'bridged' configuration, and is commonly
used in car stereos to give 4 times the power available from a single
ended amplifier stage..
If
you want to investigate the circuit further, you can download the
processor datasheet from the manufacturers
website, or direct from mine.
|