AMU Library 3.0
C/C++ library for communicating with AMU (Aerospace Measurement Unit) devices
Loading...
Searching...
No Matches
ieee488.c File Reference
#include "parser.h"
#include "ieee488.h"
#include "error.h"
#include "constants.h"
#include <stdio.h>

Go to the source code of this file.

Functions

static void regUpdate (scpi_t *context, scpi_reg_name_t name)
static void regUpdateSTB (scpi_t *context, scpi_reg_val_t val, scpi_reg_name_t mask, scpi_reg_val_t stbBits)
scpi_reg_val_t SCPI_RegGet (scpi_t *context, scpi_reg_name_t name)
static size_t writeControl (scpi_t *context, scpi_ctrl_name_t ctrl, scpi_reg_val_t val)
void SCPI_RegSet (scpi_t *context, scpi_reg_name_t name, scpi_reg_val_t val)
void SCPI_RegSetBits (scpi_t *context, scpi_reg_name_t name, scpi_reg_val_t bits)
void SCPI_RegClearBits (scpi_t *context, scpi_reg_name_t name, scpi_reg_val_t bits)
void SCPI_EventClear (scpi_t *context)
scpi_result_t SCPI_CoreCls (scpi_t *context)
scpi_result_t SCPI_CoreEse (scpi_t *context)
scpi_result_t SCPI_CoreEseQ (scpi_t *context)
scpi_result_t SCPI_CoreEsrQ (scpi_t *context)
scpi_result_t SCPI_CoreIdnQ (scpi_t *context)
scpi_result_t SCPI_CoreOpc (scpi_t *context)
scpi_result_t SCPI_CoreOpcQ (scpi_t *context)
scpi_result_t SCPI_CoreRst (scpi_t *context)
scpi_result_t SCPI_CoreSre (scpi_t *context)
scpi_result_t SCPI_CoreSreQ (scpi_t *context)
scpi_result_t SCPI_CoreStbQ (scpi_t *context)
scpi_result_t SCPI_CoreTstQ (scpi_t *context)
scpi_result_t SCPI_CoreWai (scpi_t *context)

Function Documentation

◆ regUpdate()

void regUpdate ( scpi_t * context,
scpi_reg_name_t name )
static

Update register value

Parameters
context
name- register name

Definition at line 49 of file ieee488.c.

◆ regUpdateSTB()

void regUpdateSTB ( scpi_t * context,
scpi_reg_val_t val,
scpi_reg_name_t mask,
scpi_reg_val_t stbBits )
static

Update STB register according to value and its mask register

Parameters
context
valvalue of register
maskname of mask register (enable register)
stbBitsbits to clear or set in STB

Definition at line 60 of file ieee488.c.

◆ SCPI_CoreCls()

scpi_result_t SCPI_CoreCls ( scpi_t * context)

*CLS - This command clears all status data structures in a device. For a device which minimally complies with SCPI. (SCPI std 4.1.3.2)

Parameters
context
Returns

Definition at line 199 of file ieee488.c.

◆ SCPI_CoreEse()

scpi_result_t SCPI_CoreEse ( scpi_t * context)

*ESE

Parameters
context
Returns

Definition at line 212 of file ieee488.c.

◆ SCPI_CoreEseQ()

scpi_result_t SCPI_CoreEseQ ( scpi_t * context)

*ESE?

Parameters
context
Returns

Definition at line 226 of file ieee488.c.

◆ SCPI_CoreEsrQ()

scpi_result_t SCPI_CoreEsrQ ( scpi_t * context)

*ESR?

Parameters
context
Returns

Definition at line 236 of file ieee488.c.

◆ SCPI_CoreIdnQ()

scpi_result_t SCPI_CoreIdnQ ( scpi_t * context)

*IDN?

field1: MANUFACTURE field2: MODEL field4: SUBSYSTEMS REVISIONS

example: MANUFACTURE,MODEL,0,01-02-01

Parameters
context
Returns

Definition at line 253 of file ieee488.c.

◆ SCPI_CoreOpc()

scpi_result_t SCPI_CoreOpc ( scpi_t * context)

*OPC

Parameters
context
Returns

Definition at line 270 of file ieee488.c.

◆ SCPI_CoreOpcQ()

scpi_result_t SCPI_CoreOpcQ ( scpi_t * context)

*OPC?

Parameters
context
Returns

Definition at line 280 of file ieee488.c.

◆ SCPI_CoreRst()

scpi_result_t SCPI_CoreRst ( scpi_t * context)

*RST

Parameters
context
Returns

Definition at line 291 of file ieee488.c.

◆ SCPI_CoreSre()

scpi_result_t SCPI_CoreSre ( scpi_t * context)

*SRE

Parameters
context
Returns

Definition at line 303 of file ieee488.c.

◆ SCPI_CoreSreQ()

scpi_result_t SCPI_CoreSreQ ( scpi_t * context)

*SRE?

Parameters
context
Returns

Definition at line 317 of file ieee488.c.

◆ SCPI_CoreStbQ()

scpi_result_t SCPI_CoreStbQ ( scpi_t * context)

*STB?

Parameters
context
Returns

Definition at line 327 of file ieee488.c.

◆ SCPI_CoreTstQ()

scpi_result_t SCPI_CoreTstQ ( scpi_t * context)

*TST?

Parameters
context
Returns

Definition at line 337 of file ieee488.c.

◆ SCPI_CoreWai()

scpi_result_t SCPI_CoreWai ( scpi_t * context)

*WAI

Parameters
context
Returns

Definition at line 348 of file ieee488.c.

◆ SCPI_EventClear()

void SCPI_EventClear ( scpi_t * context)

Clear event register

Parameters
context

Definition at line 188 of file ieee488.c.

◆ SCPI_RegClearBits()

void SCPI_RegClearBits ( scpi_t * context,
scpi_reg_name_t name,
scpi_reg_val_t bits )

Clear register bits

Parameters
name- register name
bitsbit mask

Definition at line 180 of file ieee488.c.

◆ SCPI_RegGet()

scpi_reg_val_t SCPI_RegGet ( scpi_t * context,
scpi_reg_name_t name )

Get register value

Parameters
name- register name
Returns
register value

Definition at line 73 of file ieee488.c.

◆ SCPI_RegSet()

void SCPI_RegSet ( scpi_t * context,
scpi_reg_name_t name,
scpi_reg_val_t val )

Set register value

Parameters
name- register name
val- new value

@TODO: remove recutsion

Definition at line 100 of file ieee488.c.

◆ SCPI_RegSetBits()

void SCPI_RegSetBits ( scpi_t * context,
scpi_reg_name_t name,
scpi_reg_val_t bits )

Set register bits

Parameters
name- register name
bitsbit mask

Definition at line 171 of file ieee488.c.

◆ writeControl()

size_t writeControl ( scpi_t * context,
scpi_ctrl_name_t ctrl,
scpi_reg_val_t val )
static

Wrapper function to control interface from context

Parameters
context
ctrlnumber of controll message
valuevalue of related register

Definition at line 87 of file ieee488.c.