隐藏功能
仅验证于07-XX-XX以上版本的34401A,在升级前请自行备份校准数据以免丢失。摘抄自EEVblog,写0值可以关闭该功能。
- DIAG:POKE 28,0,1191 启用标准差和峰峰值
- DIAG:POKE 30,0,1191 启用机内温度和外部温度传感器,并激活对应的SCPI指令(参见34970A)
- DIAG:POKE 31,0,1191 启用比例计算
- DIAG:POKE 32,0,1191 启用自定义转换孔径
- DIAG:POKE 33,0,1191 启用状态存储和开机自动调回
- DIAG:POKE 25,0,1 启用10mA AC量程
- DIAG:POKE 27,0,1 启用10kHz AC滤波器
- DIAG:POKE 29,0,1 在温度测量模式下显示原始测量值
激活的SCPI指令:
- CALCulate:AVERage:SDEViation?CALCulate:AVERage:PTPeak?
- CONF:TEMPerature {TCouple|RTD|FRTD|THERmistor|DEF},{|MIN|MAX|DEF},{|MIN|MAX|DEF}
- UNIT:TEMPerature {C|F|K}
- SENSe:TEMPerature:TRANsducer:TYPE {TCouple|RTD|FRTD|THERmistor|DEF}
- SENSe:TEMPerature:NPLCycles {0.02|0.2|1|10|100|MINimum|MAXimum}
- SENSe:TEMPerature:TRANsducer:TCouple:TYPE {B|E|J|K|N|R|S|T}
- SENSe:TEMPerature:TRANsducer:TCouple:RJUNction {|MIN|MAX}
- SENSe:TEMPerature:TRANsducer:RTD:TYPE {85|91}
- SENSe:TEMPerature:TRANsducer:RTD:RESistance:REFerence {|MIN|MAX}
- SENSe:TEMPerature:TRANsducer:THERMistor:TYPE {2200,5000,10000} 注:前两者B=3975,后一者B=3695
- DIAGnostic:TEMPerature?
- CALCulate:FUNCtion SCALe
- CALCulate:SCALe:GAIN
- CALCulate:SCALe:OFFSet
- <Measure>:APERture {<Time>|MIN|MAX}
- *RCL 0 注:似乎只有一个槽位
- *SAV 0 注:同上
- MEMory:STATe:RECall:AUTO {OFF|0|ON|1}
验证功能是否开启:
- DIAG:PEEK? -10,1,0 检查标准差和峰峰值
- DIAG:PEEK? -10,2,0 检查机内温度和外部温度传感器
- DIAG:PEEK? -10,3,0 检查比例计算
- DIAG:PEEK? -10,4,0 检查自定义转换孔径
- DIAG:PEEK? -10,5,0 检查状态存储
更多PEEK&POKE
- DIAG:PEEK? -12,0,0 lookup block table in ROM data using index to stored address
- DIAG:PEEK? -11,0,0 lookup NVRAM data by block using the index to stored address
- DIAG:PEEK? -10,<FUNC>,0 是否已启用隐藏功能
- DIAG:PEEK? -9,0,0 No of rows in the block table
- DIAG:PEEK? -8,0,0 [unsecured] enable: ZERO DCV
- DIAG:PEEK? -7,0,0 读取ADC原始数据
- DIAG:PEEK? -6,0,0 从上个中断中读取堆栈转储
- DIAG:PEEK? -5,0,0 是否有等待中的中断
- DIAG:PEEK? -4,0,0 读取电力线频率 1=50/400Hz
- DIAG:PEEK? -3 ROM ref values for specified block number e.g. PEEK -2, 70, 0
- DIAG:PEEK? -2,<ADDR>,0 读取EEPROM高区(校准)字,以特定格式返回
- DIAG:PEEK? -1,<ADDR>,0 读取EEPROM低区(设置)字,以十进制返回
- DIAG:PEEK? 0,<ADDR>,0 读取RAM字节
- DIAG:PEEK? 1,<ADDR>,0 读取RAM字
- DIAG:PEEK? 2,<ADDR>,0 读取RAM双字
- DIAG:PEEK? 3<ADDR>,0, 读取RAM浮点
- DIAG:PEEK? 25,0,0 输出*IDN字符串
危险!以下写入操作将可能损坏仪器
- DIAG:POKE 34,0,0 复位CPU
- DIAG:POKE 23,0,0 重置校准计数
- DIAG:POKE 0,0,0 增加校准计数
- DIAG:POKE -2,<ADDR>,<DATA> 写入RAM字节
- DIAG:POKE -3,<ADDR>,<DATA> 写入RAM字
- DIAG:POKE -4,<ADDR>,<DATA> 写入RAM浮点
获取34401校准数据
DIAG:PEEK? -2,<RANGE>0
其中量程数字从最低到最高是:
DCV 75-79
DCI 82-85
OHM 87-92
OHM4 94-99
ACV 104-108
获取到的格式是 <系数>,<左移位数>,<0>,<前面板偏移>,<后面板偏移>,得到的值在进行线性变换后仍需叠加一个二次项和三次项的矫正,参见https://www.eevblog.com/forum/testgear/hp-agilent-34401a-hidden-menu/115/,感谢作者,这真是一项十分艰难和巨大的工作。
