beautypg.com

SRS Labs SR510 User Manual

Page 49

background image

45

Program Example 3:
IBM PC, Microsoft C v3.0,
via RS232

Machine language routines to interface to the
COM1: RS232 port are provided in the file
RS232.OBJ found on the SR565 disk. These
routines allow for simple interfacing to the SR510
at 19.2 kbaud from C programs.

To use these routines, the large model must be
used. Compile with the /AL switch and link with
RS232.OBJ.

Only two wires between the IBM PC's ASYNC port
and the SR530 are needed (pins #2 & #3 of the
RS232), but pins 5,6,8 and 20 should be
connected together on the connector at the IBM
end.

#include

/*

Compile with >MSC program name/AL;
link with RS232.OBJ (on SR565 disk)

RS232.OBJ defines:
init ()

Initializes COM1: to 19.2 kbaud

txstr (str);

Char *str;

str must terminate with

′$′ char

Sends string str to COM1:

rxstr (str);

str must be declared with 15 characters
or more length.
Fills str with string received from COM1:

If an error occurs, your procedure nocom() is called.
Nocom() must be a C procedure in your program.

Example program to read the SR510 outputs and ramp the x6 analog
Output using Microsoft C v3.0 (large model) and the COM1: port.
Set all switches in SW2 to UP on SR510 for 19.2 kbaud.

*/

main ()

{
char str1[20], str2[20];
float v1,x;

init ();

/* init COM1: port to 19.2 kbaud */

txstr (

″w0$″);

/* set character interval to 0 */

x = 0;
while (1)

{
txstr (

″q$″);

/* read channel 1 output */

rxstr (str1);

/* into str1 */

sscanf (str1,

″%f″, &v1);

/* scan str1 for a float variable */