![4D systems uDRIVE-uSD-G1 User Manual Download Page 16](http://html1.mh-extra.com/html/4d-systems/udrive-usd-g1/udrive-usd-g1_user-manual_3069528016.webp)
µ
DRIVE
-
uSD
-
G1
www.4dsystems.com.au
16
2.4
Serial Interface (TTL)
The µ
DRIVE
needs to be connected via a serial link to a host controller. The host uses this
serial link to send commands to the module for data storage and retrieval. Use the signal
pin-outs as well as the application example shown in the following section for correct
connection to the host.
NOTE!
The RX and the TX signals are at 3.3V levels. If interfacing to a host system running at
voltages greater than 3.6V levels, say 5.0Volts, then a 100 to 220 Ohms series resistor must
be inserted between the Host Tx and the µ
DRIVE
-
uSD
-
G1
Rx signals.
Serial Data Format: 8 Bits, No Parity, 1 Stop Bit.
Auto Baud Detect:
The µ
DRIVE
module has an auto-baud detect function which can operate from 300 baud
to 256K baud. Prior to any commands being sent to the module, it must first be initialized
by sending the ASCII character ‘U’ (55h) after power-up. This will allow the module to
determine and lock on to the baud rate of the host controller automatically without needing
any further setup.
This must be done every time the module is powered up or reset.
If the host needs to change the baud rate, the µ
DRIVE
must be powered down and
powered back up again. The “U” command cannot be used to change the baud rate during
the middle of normal usage.
Serial Timing:
Each command is made up of a sequence of data bytes. When a command is sent to the
module and the operation is completed, the µ
DRIVE
will reply back with a single
acknowledge byte called the
ACK
(06h). This tells the host that the command was
understood and the operation is completed. It will take the module a certain amount of time
to reply back with an
ACK
, depending on the command and the operation that has to be
performed. If the µ
DRIVE
module receives a command that it does not understand it will
reply back with a negative acknowledge called the
NAK
(15h).
For example, if a command has 5 bytes but only 4 bytes are sent, the command will not be
executed and when the next following command bytes are sent the module will reply back
with a
NAK
for each and every byte it receives. For correct operation make sure the
command bytes are sent in the correct sequence.
Note: No termination character is to be sent at the end of the command sequence. i.e.
don’t send any CR, or Null, or any other end of command bytes.