General Purpose Sequencer

SSC-32 General Purpose Sequencer.
Author: Mike Dvorsky
Version: 1.00
Date: Jan 15 2008
Table of Contents
EEW, EER commands - EEPROM Write,
Read
EEW Format
EER Format
Sequence Format
Header
Servo/Speed List
Time/Pulse Width List
Memory Map - Sequences in External
EEPROM
Location 0-255: Sequencer Pointer
Table
Locations 256-32767: Sequence
Data
General Notes on Programming EEPROM
Sequence Example
Sequence Pointer Table
Sequence Header
Servo/Speed List
Time/Pulse Width List
Sequencer Commands
Start a player
Stop a player
Change the speed of a player
Change the pause value of a player
Go to a step in a sequence
Query a player
Examples of Sequencer Commands
EEW, EER commands EEPROM Write, Read.
The EEW and EER commands are used to write and read external EEPROM data. In order for these
commands to be used, an EEPROM chip must be installed in the 8-pin socket on the SSC-32. The chip
used for testing is a Microchip 24LC256-I/P which has 32768 bytes of storage. Other I
2
C serial
EEPROMs with comparable pinout should work, but have not been tested.
The primary use of external EEPROM is to store sequences for the General Purpose sequencer. The
first 256 bytes of external EEPROM are reserved exclusively for the GP sequencer, but the other bytes
may be used for other purposes.
EEPROM read and write commands are issued with arguments in decimal format, but the response to
an EEPROM read command is in binary format. This is in keeping with the SSC-32 convention of
receiving commands in decimal format and providing responses in binary format.
NOTE: The current firmware version (SSC32-V2.01GP) requires a - character before the address
in EEPROM read and write commands. If this character is omitted, the EEPROM access will be
performed on internal EEPROM of the ATMega168 processor. Future firmware versions will not
require the - character for external EEPROM access.
NOTE: No external EEPROM read or write accesses should be performed while a sequence is
executing out of external EEPROM.
EEW Instruction Format
EEW -<addr>,<byte>,<byte>,<byte>, ,<byte><cr>
<addr> = the starting address of the data to be written, in decimal format
<byte> = a byte of data to be written to external EEPROM, in decimal format

Summary of content (8 pages)