Thanks for the input -- I agree about the PWM -- and also the way you were talking about doing it (register, counter, comparator) -- in fact I'm going to use a cheap-and-cheerful 50 cent PIC for each meter to implement the PWM -- each of these PICS will be told what to do by my PICAXE ... still fine-tuning the details. Cheers -- Max
All meters are basically a spring loaded coil of wire placed in a magnetic field. Input current causes a magnetic force, which balances with the spring force to produce a equilibrium position.
To make it read bigger amps add a low shunt resistance.
To make it read volts add high series resistance.
In your case I think you should not use any shunt resistance (so as to limit the power dissipated by the meter) and only use series resistors. Take the PIC output voltage and apply it to the meter with a 1 meg pot in series (set to max resistance!). Dial the pot down until you get full deflection, then measure the pot with a DMM and put a fixed resistor of this value permanently in series with the meter. You might want to add a fixed resistor to your test setup, say 10k or so, to prevent accidents from happening.
Have you considered using PWM for the meters? Even a simple first order PWM should work fine. This would give you very fine grained control of the meter position and would drastically reduce pin count and external components.
In CPLDs and FPGAs I implement PWM via an up-counter, a comparator, and a register. if the up-counter is less than the register value, make the output high. If it is greater than or equal, make the output low. If the clock into this process is fast enough the meter will act like a low pass filter and display a steady value. To use a slower clock, add a capacitor to the meter. Width (bits) of the counter and register determine the resolution.
For audio you should use at least a second order modulator in order to obtain reasonable clock speeds and low noise floor.
Blog Doing Math in FPGAs Tom Burke 12 comments For a recent project, I explored doing "real" (that is, non-integer) math on a Spartan 3 FPGA. FPGAs, by their nature, do integer math. That is, there's no floating-point ...