Serial Port Commands Available - AKG CM12/8 Manual

Matrix mixer
Table of Contents

Advertisement

Available languages

Available languages

Serial Port Commands Available

The CM12/8 uses a modification of the typical one-to-one connection between two RS-232 com­
patible devices. The CM12/8 has both an RS-232 transmitter and receiver section. The transmitter
section is"tri-stated", or placed in a high impedance mode, until the particular device is addressed.
To facilitate the simple parallel connection of multiple devices on a single RS-232 port, an address­
ing scheme is employed to route commands from the host to the proper device. When a device
receives its address from the host computer, it temporarily turns on its RS-232 transmitter long enough
to send whatever data is requested by the host. In this way, multiple devices may drive a single
transmit signal back to the host, because only the addressed CM12/8 will turn on its transmitter.
Valid address values are 128-254 (80h-FEh). 255 (FFh) is an invalid address and must not be used.
Because the CM12/8 will interpret any single data byte whose value is greater than 127 as an
address, single byte data (as opposed to addresses) sent from the host must be in the range of 0­
127. If a data value needs to be output that exceeds 127, two bytes are output such that the first
byte is the lower 7 bits of the 8 bit value, and the second byte is 1 if the MSB of the data byte is 1, or
0 if the MSB of the data byte is 0.
Every CM12/8 command must be preceded by the address of the device to be controlled. If a
device with the requested address exists on the system, it will respond by sending a "0" back to the
host. The following code fragment, in BASIC, would be used to get an "Acknowledge" name string
back from an CM12/8:
'Open Com1:9600, N, 8, 1.
OPEN "COM1:9600,N,8,1" FOR RANDOM AS #1 LEN = 25
...
...
'Output the device address.
PRINT #1, CHR$(134)
'Receive "0" byte. The ASC function is used to convert the received string data to
'numeric data.
DataByte% = ASC(INPUT$(1,#1))
'Output the "Acknowledge" command.
PRINT #1, CHR$(1)
'Receive the length of the acknowledge string (3 for the CM12/8).
DataByte% = ASC(INPUT$(1,#1))
'Receive the name string '("CM128")
Name$ = INPUT$(DataByte%,#1)
The first PRINT and INPUT$ sequence must precede every command sent, even if the command is
sent to the same CM12/8 as the previous command. Thus, each interchange with an CM12/8
follows this pattern:
1) Host sends device address (1 byte);
2) Host receives byte of "0" from CM12/8 as acknowledgement;
3) Host sends command (1 byte) to CM12/8;
4) Host and CM12/8 interact based on particular command sent.
The following is a listing of available commands grouped based on the CM12/8 function to which
the commands are related. The word "Host" in the command descriptions means the IBM PC or
compatible to which the CM12/8 is connected.
25
CM12/8

Advertisement

Table of Contents
loading

Table of Contents