--------------------------------
| |
--- |
------- | | |
|-----------------| |---->| | Rp1 Resonance |
| ------- | | |
| |\ R4 --- |
------ | | \ | |
Audio >--- R2 -----| >-------- --- |
in | ------ | | / | ------...------ |
| | |/ Opamp | (Ccouple) | | | Filter 2 | |
--- | |--------------| |------> ...| through |---|-->
| | R3 | | | | | | Audio | 4 |
| | |-----| |-----| out ------...------
--- | | | C1 | |
| | | |
| | ------- | |
---- ------- R1 ---- |
| | ------- |
----- |
| cmos switch (1/4 4066 (or 74HC equiv?)) |
|--------------------------------------------------
|
|
PWM Clock in
e.g. 8x44kHz
Rougly R1=R2 (unity gain, for oscilating filter make sure overal
gain is slightly higher than 1).
This will give a linear cutoff frequency dependence on the control voltage. Alternatively, a capacitors chargin curve can be used to give the filter a logarithmic respons, lets say an equivalent of the 1 Volt/octave standard, by making an exponential oscilator by replacing the current source by a resistor.
The sensitivity of the above design for capacitor and resitor
values is small, ordinary parts will do fine, for high quality
the parts could be matched or high precision.
Because of the pulse width controlled voltage input, offset
and multiplicative errors are circumvented, and a processor
or microcontroller or some random logic can reasonable easy
be used to make a highly accurate pulse width modulation index.
Various possibilties exist to tackle the offset (+ noise) and
absolute voltage control range problems, mainly by observing
that linking the capacitor decay rate with PLL can fix the
absolute error, and that charge coupling of the comparator
circuitry can virtually compensate for its offset.
----------
Din0 | |
---->| |----| Rx |------| 2Rx |---------
| | |------------- |
Din1 | | | ---
---->| |----| Rx |------| Rx |----
| | |
. . | |
. . | | Rx
Din7 . . .
---->| |----| Rx |------| 2Rx |---------
| | | |
Clock | | | |---- ---
---->| | ------- |
Enable | | \+ -/ | Hi Zin Opamp
---->| | \ / |
| | | V |
--- ---------- | |
|------
74HC573 |
Out
It should work until 10 to 12 bits or so using precision resistors,
possibly more. I used a set of R's from one series of 3k3, because
I happeded to have them. Converion time (apart from opamp):
easily in the <.1 uSec range. The reason this works with ordinaryu
and cheap parts is that cmod outputs (unlike their ttl counterparts
almost clamp to the supply rails with very small and constant
offset.