I got some time to work on my digital S-meter/AGC concept. I’m running the Arduino ADC in continuous mode at 9600 conversions/sec. The converter works in the background and generates an interrupt when a new sample is available. This ADC samples the receive audio from the top of the volume control and performs a fast peak-detect function with controllable decay. This drives the S-meter display and also forms the basis for a feedforward AGC that will be implemented with a D-A converter driving the volume control on a TDA7051A power amplifier chip.
In the process, I fixed the bias on the audio preamp stage to give about another 10dB of dynamic range. This will be very important with feedforward AGC, as everything up to the volume control always operates at wide open gain, so the audio preamp is the stage that overloads first.
I’m having some problems with the Arduino locking up since I implemented the interrupt-driven continuous fast A-D. I might be asking too much of the Nano. I’ll be working on this; an 80 mHz STM32 board is waiting in the wings if that’s what it takes.