PGA2310 Digital Volume Control

Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.
ertyu said:
Doh, your right, I forgot to take that into consideration.
Motorized is hard to find, well, absolute is hard to find.
Back to the good old incremental encoder.

Just ends up with a lot of things to "poll" on the micro.

more mem (for the incremental encoder) on a uController is also cheaper to go then buying a absolut encoder :) ...

I think a incremental encoder is no problem. You can concentrate on poll'ing the encoder and IR-reciever. Everything else is secondary it does not have to be fast.

If you go for a at90s2313 who is performing min 4 MIPS then it is'nt a problem. You can also turn everything of (even the crystal) and make a wakeup procedure by change state on the int0 and int1 pin.

Something else :

What about going for opto isolation? Then you don't have to mix digital ground with analog ground. You could even place the uC next to the display and far away from the analog parts.

Sonny
 
I have some guest's from germany this weekend so ... I will get back monday.
But the at90s2313 (The at90s8515 say the same thing) need's a low level puls om minimum 21 msec. ... So yes you do need som circuit at this point.

Any idears?
:)

by the way : aluminium caps! http://www.niccomp.com they have some really nice SMD CAPS (NACZ) 1000uF/25V - Impedance at 100KHz : 66mOhm!! (I know THAT is not what we are dis right now!)
:)
DRAWBACK? : You need to buy at least 200pcs
:(

Sonny
 
<b>About the analog domain of PGA2310</b>

In the PGA2310 evaluation board there are no capacitors or resistors in either the inputs or outputs of the circuit. So, the inputs aren't "protected" from DC offset or outputs protected from load.

In a real-life application, should the DC offset be blocked? Wouldn't the zero crossing functionality in PGA2310 get confused of a DC component in the input?

I asked some time ago about driving a power amp with a CS3310. I learned that I might get the job done without a current buffer after the CS3310, but the buffer was highly recommended. I guess the same applies to the PGA2130 chip. But, what if I wanted to get away with a simple circuit? Would the following do the job? Or, what would you change?

<img src="http://cs.joensuu.fi/~jnivala/img/pga2310-analog_domain.gif" alt="PGA2130 analog domain">

Janne
 
You are right Janne.

Crystal says "As with any adjustable gain stage the affects of a DC offset at the input must be considered. Capacitively coupling of the analog inputs may be required to prevent clicks and pops wich occours with gain changes if an appreciable offset is present."

But if think an inputbuffer with a DC servo could do the job to. Wich maybe is a better solution! Cause TI says that if the source resistance feeding the PGA is larger than 600 Ohm the performance would decrease.

But you can disable the zerocross detection circuit.

About the outputstage from the PGA :

It is stable with load up to about 1nF where the CS3310 only manage as low as 100pF.

All the distortion values in the datasheet is with a 600Ohm load.

Even though i think it would be good to buffer it with a zerofeedback buffer or a buffer/opamp from Analog Devices or TI (Burr Brown).

Sonny
 
Power interrupt detect circuit: i have an AC power detect circuit posted at my website as part of a power-amp protection board ( http://invasioncity.com/~chad/supervisor.html ). The circuit uses an opto to look directly at the AC mains voltage, and a simple RC time delay to trigger an open-collector output (darlington BJT) to the micro. It will react extremely quickly to any interruption in power (even a single cycle of missing AC will trigger it!). This is easier than using an A-D channel on your micro or other schemes which monitor the rectified and filtered voltage, and it gives you more time to write stuff to flash. I've had the pleasure of hearing my amp relays click off just a split second before the lights go out, and upon swivelling my head to look at the amp, catch the last little glow of the LED as it winks out. Works like a charm, and doesn't raise a fuss during normal operation. The only thing that might need adjustment would be the opto resistor value.

For anyone concerned about writing to flash, let me say that your flash lifetime should be on the order of 100,000 writes, if not more. Older flash memories were susceptible to early failure, with perhaps only a 10,000 write lifetime, but some of the better modern EEPROM designs are getting up into the 1 million write cycle range. So, not a big deal - again as long as you're not writing to it every half second. But, the aforementioned power fail detect circuit should be just the thing!

As far as the debate between pot and absolute encoder, the pot should win hands down. I think you'll find a cheapo 5K pot is *way* cheaper than an encoder with any kind of lifespan. For the extra few lines of code it will take to prevent hopping between values, and the use of fewer pins, in my mind there's no contest.

The outputs from the volume control should most definitely be buffered (IMHO), as the quality of the built-in opamp probably doesn't measure up. So, loading it down is likely a bad idea. I would also want to reduce load-induced thermal changes on the die, just to keep those silly polysilicon resistors happy.

Finally, i think that cap-coupled input to the volume control should be fine, since a cap won't increase the source impedance until we're down into frequencies we don't care about. A DC servo'd opamp will do exactly the same thing. Personally, I like to DC couple everything, with trimmers along the way so you can manually adjust the DC bias to zero. Sure, you need to periodically go in there and trace your way from the signal source down through all the circuitry, trimming DC offset as you go, but there aren't that many to adjust, and component drift is pretty slow. I've found that having the bandwidth extend down to zero has really done a lot to clean up my system's bass.

Anyway, just my 2 cents.
 
2 cent's here and there makes up a lot of $
;)

Normaly you won't use a ADC (makes the uC cheaper!) to detect a powerfail. Normaly it is a Comparator driving a digital input on the uC. So your circuit should just be fine!. The OPTO ... How wide is the pin spacing? I does not know the type.

If it has to work with european linevoltage the device need some approval. But you can widen it by your self to about 8mm pin spacing accros the body.

You are right about DC and cleaning up the bass! I have experienced the same!

Sonny
 
Amplifier DC drift

If it were a choice between using input capacitors and using a good DC servo on prior stages I would choose the DC servo. Although it would add some complexity to the preceding stage it is good insurance to automatically compensate for DC drift in those circuits.

The response time of the servo circuit does not need to be fast so there will be no impact on sound quality as long as servo null hunting is controlled. A time constant of 3 to 4 seconds or longer is more than sufficient.

John Fassotte
Alaskan Audio
http://www.audioamps.com
 
Anyone have thoughts on universal IR control code decoding?

From my research:
Their are 3 basic concepts at work. Pulse Position, Pulse Width and regular binary Pulse modulation techniques.
And a variety of standards using each of the above.

From what I gather, a typical universal decoder will sample the ~40Khz IR signal at or above the Nyquist rate, a typical rate being 100Khz. So this gives you enough data to represent the wave, but beyond that:

-How can you detect the start of a command? Since there are many standards at work here, I assume each using a different start indicator, but I think a single or double pulse is a typical start command indicator.

-How wide are the pulses? Again, many standards, many pulse widths. Sampling for a period of time should give you an indication of it, but its difficult with a PWM technique.

-How many bits are in a command?

-Whats the bit rate? Related to the pulse width.

Of course you could store the entire sampled data for a period of 250-500ms or something, but that is a lot of data to store and compare, plus if you are comparing that much at such a low level, errors will obviously play a role. Still need to know the start command indicator, otherwise its impossible to decode the bitstream.
 
Well Atmel is down but I think I recognize those links. Documents for implementing the RC5 control protocol.

So ya, its very simple if you pick one protocol and implement it. I'm talking about a receiver which generates a uniqe code for ~every control protocol.

I think thats the way to go as it is likely that sitting in front of your TV you have 3 remotes each of which operate with a different protocol. And it would be nice to be able to utilize any particular remote you would like to control the amp and not have to pick a specific one or build one.
 
Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.