Migrating from N88BASIC


There is no compatibility in functions of N88BASIC and new function.

It is necessary to Migrate program by referring to following correspondence tables and examples for conversion.

N88BASIC

 

New Function

Setting and Test Functions

END

Example

GpibExit

ISET IFC

GpibInit

GpibSendIFC

SET REN

IRESET REN

Example

GpibChangeREN

 

CMD DELIM

Example

GpibSetDelim

CMD TIMEOUT

Example

GpibSetTimeOut

IEEE(0)

IEEE(1)

IEEE(2)

None

GpibGetStatus

Transmitting/Receiving Functions

PRINT@

Example

GpibSendData

WBYTE (multi-line message)

Example

GpibSendCommands

WBYTE (binary data)

None

GpibSendData

INPUT@

None

GpibRecData(Substitution)

LINE INPUT@

Example

GpibRecData

RBYTE

None

GpibSendCommands

GpibRecData

Serial Poll Functions

POLL

Example

GpibSPollAll

IEEE(4)

IEEE(5)

IEEE(6)

None

Not supported

Parallel Poll Functions

PPOLL

None

Not implemented

IEEE(7)

None

Not implemented

CMD PPR

None

Not implemented

SRQ Transmitting Functions

ISET SRQ

STATUS

Example

GpibSendSRQ

Event Functions

ON SRQ GOSUB

None

Not implemented

SRQ ON

SRQ OFF

SRQ STOP

None

Not implemented

 


 

ISET IFC, END -> GpibInit, GpibSendIFC, GpibExit

N88BASIC

Program Contents

New Function

 

 

 

 

 

100   ISET IFC

300   END

Declares variable of return value

Specifies Device Name

Declares variable of Device ID

Sets IFCTime

Initializes device

Transmits IFC

Terminates device

long Ret;

char DeviceName[50] = "Gpib000";

short DevId;

short IfcTime = 1;

        Ret = GpibInit ( DeviceName, &DevId );

        Ret = GpibSendIFC ( DevId );

        Ret = GpibExit ( DevId );

TOP

 


 

ISET REN, IRESET REN -> GpibChangeREN

N88BASIC

Program Contents

New Function

 

110   ISET REN

Sets Enable to enabled

Sets REN to enabled

short Enable = 1;

        Ret = GpibChangeREN ( DevId, Enable );

 

290   IRESET REN

Sets Enable to disabled

Sets REN to disabled

short Enable = 0;

        Ret = GpibChangeREN ( DevId, Enable );

TOP

 


 

CMD DELIM -> GpibSetDelim

N88BASIC

Program Contents

New Function

 

 

 

 

120   CMD DELIM = 0

Declares variable

Sets Delim

Sets Eoi

Sets Eos (fixed 0)

Sets delimiter and EOI

* Setting value is different

short Delim, Eoi, Eos;

        Delim = 1;

        Eoi = 1;

        Eos = 0;

        Ret = GpibSetDelim ( DevId, Delim, Eoi, Eos );

TOP

 


 

CMD TIMEOUT -> GpibSetTimeOut

N88BASIC

Program Contents

New Function

 

 

130   CMD TIMEOUT = 10

Declares variable

Sets TimeOut

Sets value of timeout

* Setting value is different

long TimeOut;

        TimeOut = 1000;

        Ret = GpibSetTimeOut ( DevId, TimeOut );

TOP

 


 

PRINT @ -> GpibSendData

N88BASIC

Program Contents

New Function

Master mode

 

 

 

 

 

 

 

 

 

 

200   PRINT @1; "*IDN?"@

Declares variable of number of data

Declares variable of array of address

Declares variable of data

 Specifies address of talker

Specifies address of listener

 

Sets address

 

Sets data

Sets number of data

Transmits data to specified address

 

long SendLen;

short Talker, ListenerArray[15];

char SendBuf[256];

        Talker = 0;

        ListenerArray[0] = 1;

        ListenerArray[1] = -1;

        Ret = GpibSetAddrInfo ( DevId,

                Talker, ListenerArray );

        strcpy ( SendBuf, "*IDN?" );        

        SendLen = strlen ( SendBuf );

        Ret = GpibSendData ( DevId,

                &SendLen, SendBuf );

Slave mode

 

 

 

 

 

 

 

 

 

200   PRINT @; "*IDN?"@

Declares variable of number of data

Declares variable of array of address

Declares variable of data

Sets address for slave

 

Sets address

 

Sets data

Sets number of data

Transmits data

 

long SendLen;

short Talker, ListenerArray[15];

char SendBuf[256];

        Talker = -1;

        ListenerArray[0] = -1;

        Ret = GpibSetAddrInfo ( DevId,

                Talker, ListenerArray );

        strcpy ( SendBuf, "*IDN?" );        

        SendLen = strlen ( SendBuf );

        Ret = GpibSendData ( DevId,

                &SendLen, SendBuf );

TOP

 


 

WBYTE (multi-line message) -> GpibSendCommands

N88BASIC

Program Contents

New Function

 

 

 

 

 

190   WBYTE &H5F, &H3F;  

Declares variable of command

 

Sets UNT

Sets UNL

 

Transmits command

short CmdArray[255];

 

        CmdArray[0] = 0x5f;

        CmdArray[1] = 0x3f;

        CmdArray[2] = -1;

        Ret = GpibSendCommands ( DevId,

                CmdArray );

TOP

 


 

LINE INPUT @ -> GpibRecData

N88BASIC

Program Contents

New Function

Master mode

 

 

 

 

 

 

 

 

 

 

210   LINE INPUT @1;A$

 

 

220   PRINT A$

Declares variable of number of data

Declares variable of array of address

Declares variable of data

 

Specifies address of talker

Specifies address of listener

 

Sets address

 

Sets maximum number of data to receive

Receives data from specified address

 

If it is normally completed

Displays received data

long RecLen;

short Talker, ListenerArray[15];

char RecBuf[256];

 

        Talker = 1;

        ListenerArray[0] = 0;

        ListenerArray[1] = -1;

        Ret = GpibSetAddrInfo ( DevId,

                Talker, ListenerArray );

        RecLen = 256;

        Ret = GpibRecData ( DevId,

                &RecLen, RecBuf );

        if ( Ret == 0 ) {

                Printf ( "%s\n", RecBuf );

        }

Slave mode

 

 

 

 

 

 

 

 

210   LINE INPUT @;A$

 

 

220   PRINT A$

Declares variable of number of data

Declares variable of array of address

Declares variable of data

Sets address for slave

 

Sets address

 

Sets maximum number of data to receive

Receives data from specified address

 

If it is normally completed

Displays received data

long RecLen;

short Talker, ListenerArray[15];

char RecBuf[256];

        Talker = -1;

        ListenerArray[0] = -1;

        Ret = GpibSetAddrInfo ( DevId,

                Talker, ListenerArray );

        RecLen = 256;

        Ret = GpibRecData ( DevId,

                &RecLen, RecBuf );

        if ( Ret == 0 ) {

                Printf ( "%s\n", RecBuf );

        }

TOP

 


 

POLL -> GpibSPollAll

N88BASIC

Program Contents

New Function

 

 

 

 

 

 

250   POLL 1,DS1;2,DS2

 

 

260   PRINT DS1

270   PRINT DS2

Declares variable of address

Declares variable of status byte

Declares variable of SRQ

Sets address to 1

Sets address to 2

 

Performs serial poll

 

If it is normally completed

Displays Stb of address 1

Displays Stb of address 2

 

short AddrArray[15];

short StbArray[15];

short SrqArray[15];

        AddrArray[0] = 1;

        AddrArray[1] = 2;

        AddrArray[2] = -1;

        Ret = GpibSPollAll ( DevId,

            AddrArray, StbArray, SrqArray );

        if ( Ret == 0 ) {

                Printf ( "%ld\n", StbArray[0] );

                Printf ( "%ld\n", StbArray[1] );

        }

TOP

 


 

ISET SRQ, STATUS -> GpibSendSRQ

N88BASIC

Program Contents

New Function

 

 

150   STATUS = &H10

160   ISET SRQ

Declares variable

Sets to transmit SRQ

Sets status byte

Sets SRQ and Stb

 

 short SrqSend, Stb;

        SrqSend = 1;

        Stb = 0x10;

         Ret = GpibSendSRQ ( DevId,

                SrqSend, Stb );

TOP