#!/bin/bash # $Id: dac.gnuplot,v 1.3 2004/04/01 05:36:50 jmuelmen Exp $ DATAFILE=$1 SCRIPT=/tmp/adc.plot PLOTFILE=${DATAFILE}.ps if [ ! -e $DATAFILE ] ; then exit; fi # first fit analog, then digital (because that's how the firmware wants to be # laid out) for ADC in 5 3 ; do PLOTFILE=${DATAFILE}.${ADC}.ps cat > $SCRIPT <<-"EOF" Rd = 24.0 Rdd = 8.0 Rset = 39.9 Rt = 62.0 Rv = 10.0 Rw = 6e-2 vref = 1.24 Rdp(x) = 1 / (1 / Rd + 1 / Rdd) Req(a) = 1 / (1 / R(a) + 1 / Rt + 1 / Rset) R(a) = (255 - a) * Rv / 256.0 + Rw v(a) = vref * (Rdp(1) + Req(a)) / Rdp(1) EOF echo fit v\(x\) \"${DATAFILE}\" using 2:${ADC} via Rd, Rv, Rw >> $SCRIPT echo set terminal postscript color >> $SCRIPT echo set output \"$PLOTFILE\" >> $SCRIPT echo plot \"${DATAFILE}\" using 2:${ADC}, v\(x\) >> $SCRIPT gnuplot $SCRIPT 2>&1 | tail -15 done