> Correct me if I'm wrong, but it looks to me like the most audio horsepower > I could count on from a 20MHz PIC would be ADC sampling at around 33kHz: > > Assume fairly low (50 Ohm) input impedance > Tacq ~ 11uS > Tad = 19.2uS > Tsample ~ 30.2uS > > or around 33kHz sample rate, give or take a bit, which would be quite > adequate for normal speech, would it not? Telephone quality is 56Kbit/sec > or 8K samples/sec., so even if I tried for 10-20K samples per second I'd > be getting relatively good quality sound, right? Or did I miss anything? I didn't check the exact timing numbers, but the concept seems correct. One thing to watch out for is aliasing. In theory you only need to sample at twice the frequency of the highest signal of interest. 8K samples/sec for voice is adequate. However, sampling that close to the limit requires a very sharp anti-aliasing filter. This is nearly impossible to do in analog hardware. The usual method is to oversample by 16x or so in a DSP, then apply a sharp anti-aliasing filter on that stream before decimating to the final output stream. You don't have the cycles to do that in a PIC. Do the best you can in analog hardware to reduce frequencies beyond 4KHz, then sample at 32KHz. If you get clever, you can probably cook up a poor man's anti-aliasing filter that looks at the nearest 8 samples to produce one output sample. Just averaging will be better than nothing, but a box filter doesn't make best use of the available information. What do you want to do with this audio stream. Are you just trying to delay it? Why do you want to convert it to a 1 bit stream? There may be easier approaches if you look at the bigger picture. ***************************************************************** Embed Inc, embedded system specialists in Littleton Massachusetts (978) 742-9014, http://www.embedinc.com -- http://www.piclist.com hint: PICList Posts must start with ONE topic: [PIC]:,[SX]:,[AVR]: ->uP ONLY! [EE]:,[OT]: ->Other [BUY]:,[AD]: ->Ads