00001 /* Gxsm - Gnome X Scanning Microscopy Project 00002 * universal STM/AFM/SARLS/SPALEED/... controlling and 00003 * data analysis software 00004 * 00005 * DSP tools for Linux 00006 * 00007 * Copyright (C) 1999,2000,2001 Percy Zahl 00008 * 00009 * Authors: Percy Zahl <zahl@users.sf.net> 00010 * WWW Home: http://gxsm.sf.net 00011 * 00012 * This program is free software; you can redistribute it and/or modify 00013 * it under the terms of the GNU General Public License as published by 00014 * the Free Software Foundation; either version 2 of the License, or 00015 * (at your option) any later version. 00016 * 00017 * This program is distributed in the hope that it will be useful, 00018 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00019 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00020 * GNU General Public License for more details. 00021 * 00022 * You should have received a copy of the GNU General Public License 00023 * along with this program; if not, write to the Free Software 00024 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. 00025 */ 00026 00027 /* -*- Mode: C++; indent-tabs-mode: nil; c-basic-offset: 8 c-style: "K&R" -*- */ 00028 00029 /*@ 00030 *@ File: mover.h 00031 *@ Datum: 23.12.1998 00032 *@ Author: P.Zahl 00033 *@ Zweck: DSP Programm für AFM/STM/SARLS/SPA 00034 *@ 00035 *@ Apparaturn Configuration Selection File 00036 *@ 00037 *@ $Header: /cvsroot/gxsm/Gxsm-2.0/include/dsp-pci32/xsm/mover.h,v 1.1 2003/04/05 12:57:25 zahl Exp $ 00038 */ 00039 00040 /* Besocke Typ... */ 00041 #define MD__AFMADJ 0x4000 /* AFM Adjust Modus */ 00042 #define MOVER_MSK (STMMode | MD__AFMADJ) 00043 //#define MOVER_MSK ((STMMode & ~(MD_PID)) | MD__AFMADJ) // disable PID 00044 00045 /* Mover Steuerung */ 00046 long afm_mover_mode=0; /* Mode s.u. */ 00047 long afm_piezo_amp=10000; /* Rampenamplitude in DA */ 00048 long afm_piezo_speed=2; /* Ramp-Speed U = (count+=speed)^2 */ 00049 long afm_piezo_steps=10; /* Anzahl Schritte je Kommando */ 00050 long afm_u_piezo; 00051 long afm_u_piezomax; 00052 unsigned long AFM_MV_count=0; /* Zeitbasis für Rampe */ 00053 unsigned long AFM_MV_Scount=0; /* Schrittzähler */ 00054 int AFM_MV_dir=0; 00055 int afm_mover_flg=0; 00056 00057 int afm_mover_app=0; 00058 00059 /* Mover Modes */ 00060 #define AFM_MOV_RESET 0 00061 #define AFM_MOV_XP 1 00062 #define AFM_MOV_XM 2 00063 #define AFM_MOV_YP 3 00064 #define AFM_MOV_YM 4 00065 #define AFM_MOV_QM 5 00066 #define AFM_MOV_QP 6 00067 00068 #define SetupMover(direction) { \ 00069 AFM_MV_count = 0L; \ 00070 AFM_MV_Scount = 0L; \ 00071 afm_mover_mode = direction; \ 00072 LetzterSTMMode = STMMode; \ 00073 STMMode = MOVER_MSK; \ 00074 DSPack; \ 00075 } 00076 00077 /* END */