spaleed_emu.c File Reference

#include <linux/kernel.h>
#include <math.h>
#include "pci32/dspC32/spa/spacmd.h"

Go to the source code of this file.

Classes

struct  SCANP
struct  SPALEED

Defines

#define AD_MAX_VOLT   10.
#define DA_MAX_VOLT   10.
#define DA_MAX_VAL   0x7ffe
#define UDA_MAX_VAL   0xffff
#define U2FLT(X)   ((X)*(float)(DA_MAX_VAL)/AD_MAX_VOLT)
#define U2INT(X)   (int)((X)*(float)(DA_MAX_VAL)/AD_MAX_VOLT+.5)
#define INT2U(X)   ((float)(X)/DA_MAX_VAL*AD_MAX_VOLT)
#define UNI_U2FLT(X)   ((X)*(float)(UDA_MAX_VAL)/AD_MAX_VOLT)
#define UNI_U2INT(X)   (int)((X)*(float)(UDA_MAX_VAL)/AD_MAX_VOLT+.5)
#define UNI_INT2U(X)   ((float)(X)/UDA_MAX_VAL*AD_MAX_VOLT)
#define DPRAMBASE   (volatile int*) (spa.dsp->virtual_dpram)
#define CMD_BUFFER   (volatile int*) (DPRAMBASE+0x00)
#define CMD_PARM   (volatile int*) (DPRAMBASE+0x01)
#define BUFFER   (volatile int*) (DPRAMBASE+DSP_BUFFER_START)
#define BUFFERL   (volatile unsigned long*) (DPRAMBASE+DSP_BUFFER_START)
#define DPRAML   (volatile unsigned long*) (DPRAMBASE)
#define LCDBUFFER   (volatile unsigned long*) (DPRAMBASE+DSP_LCDBUFFER)
#define MAXSCANPOINTS   (DSP_DATA_REG_LEN)
#define DSPack   spa.dsp->SrvReqAck=TRUE
#define MD_CMD   0x08
#define MD_SCAN   0x10
#define MD_BLK   0x80
#define LEDPORT(X)   *((unsigned long*)(DPRAMBASE+DSP_USR_DIO))=X

Functions

void LCDclear (void)
int LCDprintf (const char *format,...)
void calc_spaparam (void)
void scan2d (void)
void linescan (int n, float y)
unsigned long ChanneltronCounts (float x, float y)
int GetParamI (unsigned int N)
float GetParamF (unsigned int N)
int InitEmu (struct dspsim_thread_data *dsp)
void ExitEmu (void)
void ServiceRequest (struct dspsim_thread_data *dsp)
double phi_xy (double dx, double dy)

Variables

SCANP scanp
SPALEED spa


Define Documentation

#define AD_MAX_VOLT   10.
 

Definition at line 35 of file spaleed_emu.c.

#define BUFFER   (volatile int*) (DPRAMBASE+DSP_BUFFER_START)
 

Definition at line 56 of file spaleed_emu.c.

#define BUFFERL   (volatile unsigned long*) (DPRAMBASE+DSP_BUFFER_START)
 

Definition at line 57 of file spaleed_emu.c.

#define CMD_BUFFER   (volatile int*) (DPRAMBASE+0x00)
 

Definition at line 54 of file spaleed_emu.c.

#define CMD_PARM   (volatile int*) (DPRAMBASE+0x01)
 

Definition at line 55 of file spaleed_emu.c.

#define DA_MAX_VAL   0x7ffe
 

Definition at line 37 of file spaleed_emu.c.

#define DA_MAX_VOLT   10.
 

Definition at line 36 of file spaleed_emu.c.

#define DPRAMBASE   (volatile int*) (spa.dsp->virtual_dpram)
 

Definition at line 52 of file spaleed_emu.c.

#define DPRAML   (volatile unsigned long*) (DPRAMBASE)
 

Definition at line 58 of file spaleed_emu.c.

#define DSPack   spa.dsp->SrvReqAck=TRUE
 

Definition at line 62 of file spaleed_emu.c.

#define INT2U  )     ((float)(X)/DA_MAX_VAL*AD_MAX_VOLT)
 

Definition at line 44 of file spaleed_emu.c.

#define LCDBUFFER   (volatile unsigned long*) (DPRAMBASE+DSP_LCDBUFFER)
 

Definition at line 59 of file spaleed_emu.c.

#define LEDPORT  )     *((unsigned long*)(DPRAMBASE+DSP_USR_DIO))=X
 

Definition at line 68 of file spaleed_emu.c.

#define MAXSCANPOINTS   (DSP_DATA_REG_LEN)
 

Definition at line 60 of file spaleed_emu.c.

#define MD_BLK   0x80
 

Definition at line 66 of file spaleed_emu.c.

#define MD_CMD   0x08
 

Definition at line 64 of file spaleed_emu.c.

#define MD_SCAN   0x10
 

Definition at line 65 of file spaleed_emu.c.

#define U2FLT  )     ((X)*(float)(DA_MAX_VAL)/AD_MAX_VOLT)
 

Definition at line 42 of file spaleed_emu.c.

#define U2INT  )     (int)((X)*(float)(DA_MAX_VAL)/AD_MAX_VOLT+.5)
 

Definition at line 43 of file spaleed_emu.c.

#define UDA_MAX_VAL   0xffff
 

Definition at line 38 of file spaleed_emu.c.

#define UNI_INT2U  )     ((float)(X)/UDA_MAX_VAL*AD_MAX_VOLT)
 

Definition at line 49 of file spaleed_emu.c.

#define UNI_U2FLT  )     ((X)*(float)(UDA_MAX_VAL)/AD_MAX_VOLT)
 

Definition at line 47 of file spaleed_emu.c.

#define UNI_U2INT  )     (int)((X)*(float)(UDA_MAX_VAL)/AD_MAX_VOLT+.5)
 

Definition at line 48 of file spaleed_emu.c.


Function Documentation

void calc_spaparam void   ) 
 

Definition at line 189 of file spaleed_emu.c.

References SPALEED::chanhv, SPALEED::chanmult, SPALEED::emission, SPALEED::filament, SPALEED::focusval, SPALEED::gunfocus, and spa.

Referenced by InitEmu(), and ServiceRequest().

unsigned long ChanneltronCounts float  x,
float  y
 

void ExitEmu void   ) 
 

Definition at line 159 of file spaleed_emu.c.

float GetParamF unsigned int  N  ) 
 

int GetParamI unsigned int  N  ) 
 

int InitEmu struct dspsim_thread_data dsp  ) 
 

Definition at line 118 of file spaleed_emu.c.

References SCANP::alpha, SCANP::alphaAlt, calc_spaparam(), SPALEED::chanhv, SPALEED::chanrepeller, CMD_BUFFER, cos(), SPALEED::cryfocus, SPALEED::ctheta, SPALEED::d, SPALEED::dsp, SCANP::E, SPALEED::extractor, SPALEED::filament, SPALEED::growing, SPALEED::gunanode, SPALEED::gunfocus, SPALEED::LastSPAMode, LCDclear(), LCDprintf(), LEDPORT, SCANP::len, SCANP::lenxy, MD_CMD, SCANP::ms, SCANP::N, SCANP::Nx, SCANP::Ny, SCANP::rotmxx, SCANP::rotmxy, SCANP::rotmyx, SCANP::rotmyy, SCANP::rotoffx, SCANP::rotoffy, SPALEED::S, SPALEED::scanp, SPALEED::sens, SPALEED::smpdist, SPALEED::smptemp, spa, SPALEED::SPAMode, sqrt(), SCANP::X0, and SCANP::Y0.

void LCDclear void   ) 
 

int LCDprintf const char *  format,
  ...
 

void linescan int  n,
float  y
 

double phi_xy double  dx,
double  dy
 

Definition at line 323 of file spaleed_emu.c.

References atan().

void scan2d void   ) 
 

void ServiceRequest struct dspsim_thread_data dsp  ) 
 

Definition at line 206 of file spaleed_emu.c.

References SCANP::alpha, SCANP::alphaAlt, BUFFERL, calc_spaparam(), SPALEED::chanhv, ChanneltronCounts(), SPALEED::chanrepeller, CMD_BUFFER, cos(), SPALEED::cryfocus, SPALEED::ctheta, SPALEED::d, DSP_alpha, DSP_CMD_GETCNT, DSP_CMD_SCAN2D, DSP_CMD_SCAN_PARAM, DSP_CMD_SCAN_START, DSP_CMD_SPACTRL_SET, DSP_CMD_SWAPDPRAM, DSP_E, DSP_len, DSP_LXY, DSP_ms, DSP_N, DSP_NX, DSP_NY, DSP_SPACTRL_CHANHV, DSP_SPACTRL_CHANREPELLER, DSP_SPACTRL_CRYFOCUS, DSP_SPACTRL_EXTRACTOR, DSP_SPACTRL_FILAMENT, DSP_SPACTRL_GROWING, DSP_SPACTRL_GUNANODE, DSP_SPACTRL_GUNFOCUS, DSP_SPACTRL_SMPDIST, DSP_SPACTRL_SMPTEMP, DSP_X0, DSP_Y0, DSPack, SCANP::E, SPALEED::extractor, FALSE, SPALEED::filament, GetParamF(), GetParamI(), SPALEED::growing, SPALEED::gunanode, SPALEED::gunfocus, SPALEED::LastSPAMode, SCANP::len, SCANP::lenxy, linescan(), MD_CMD, MD_SCAN, SCANP::ms, SCANP::N, SCANP::Nx, SCANP::Ny, REQD_DSP, SCANP::rotmxx, SCANP::rotmxy, SCANP::rotmyx, SCANP::rotmyy, SCANP::rotoffx, SCANP::rotoffy, SPALEED::S, scan2d(), scanp, SPALEED::scanp, sin(), SPALEED::smpdist, SPALEED::smptemp, spa, SPALEED::SPAMode, sqrt(), SCANP::X0, and SCANP::Y0.


Variable Documentation

SCANP scanp
 

Definition at line 95 of file spaleed_emu.c.

Referenced by ChanneltronCounts(), linescan(), scan2d(), and ServiceRequest().

SPALEED spa
 

Definition at line 116 of file spaleed_emu.c.


Generated on Sat Apr 1 09:04:46 2006 for GXSM by  doxygen 1.4.6