00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014 #ifndef _KEITHLEY_DDC_PROTOCOL_H_
00015 #define _KEITHLEY_DDC_PROTOCOL_H_
00016
00017 #include "ElectrometerProtocol.h"
00018 #include "ElectrometerException.h"
00019
00032 class KeithleyDDCProtocol : public ElectrometerProtocol
00033 {
00034 public:
00035
00039 KeithleyDDCProtocol (std::string& gpib_device_name);
00040
00044 virtual ~KeithleyDDCProtocol (void);
00045
00049 void set_range (std::string value);
00050 void autoRange_on (void);
00051 void autoRange_off (void);
00052 void autoRange_OFF_forK486_487 (void);
00053 void autoRange_OFF_forK617_6512(void);
00054
00055 void zero_check_on (void);
00056 void zero_check_off (void);
00057 void zero_correct_on (void);
00058 void zero_correct_off (void);
00059 void auto_zero_on (void);
00060 void auto_zero_off (void);
00061
00062 void reset (void);
00063
00064
00065
00069 std::string get_value(void);
00070
00074 void setAmperMeterMode (void);
00075 void setAmperMeterMode_forK487 (void);
00076 void setVoltMeterMode (void);
00077 void setOhmMeterMode (void);
00078 void setCoulombMeterMode(void);
00079 void clear_registers (void);
00080
00084 std::string get_raw_status (void) ;
00085
00089 std::string get_mode (void) { return _mode; };
00090 std::string get_range (void);
00091
00092
00093
00094
00095
00096
00097
00098
00099
00100
00101
00102
00103
00104 protected :
00105
00106 private :
00107
00108 };
00109
00111
00112 #endif // _KEITHLEY_DDC_PROTOCOL_H_