At 06:45 PM 4/15/97 -0500, you wrote: >|>By the way I did run across a programmable sine wave generator chip >|>good from DC to 500 kHz from MicroLinear -- I suppose this could be >|>squared up and used as a clock. > >|Why don't you try a programmable divider (from 20MHz)? It probably gives >|you enough resolution. > >[nb: Does anyone know a good way to make MS Exchange format >replies properly without having to hand-insert all the "|" or >">" characters?] > >A "conventional" clock divider running from 20MHz won't have much >resolution around 500KHz. Your steps would be: > > 487,805Hz > 500,000Hz > 512,821Hz > >etc. [i.e. about 12KHz resolution]. You may get much finer >resolution if you don't mind a little bit of "jitter" in the >output. You may get any frequency you want, to arbitrary >accuracy, with 1/2 clock-period of jitter by building a suit- >able-length accumulator (i.e. adders and latches). If you >build, say, a 16-bit accumulator and put 2193 on the input, >then the MSB of the output will toggle at a speed (2193/65536) >times the cycle rate. > >Alternatively, if you don't mind having a bit more jitter, you >may use a simpler technique as found in a 4089 [a cute but not >terribly useful part which has been discontinued; if you can >find the data sheet for it somewhere, though, you'll see what >I'm talking about]. A 22v10 fed with a 20MHz clock should be >able to produce any frequency from 39,139Hz to 10,000,000Hz >within 0.4% [if you were to use this route, you'd need 11 out- >puts from the PIC to set the desired output speed but the PIC >itself wouldn't have to do anything]. If more accuracy is need- >ed, you could change the circuit a little bit and have the PIC >"fine-tune" the output (the circuit itself works as a divide-down >counter that selectively "drops" counts; the PIC could "drop" a >few more if needed). > >This technique, by the way, works best when the output frequency >is much below the input frequency, or when it will be divided down >so jitter doesn't matter too much (the device works by producing >a frequency between 1/2 and 1/4 of the input frequency and then >dividing that by a power of two; the more stages you divide it the >less jitter will remain). If you use it for audio, you need to >divide it by at least 100 in order to eliminate the jitter comp- >onents. For your applications, though, it sounds as though that >shouldn't be too much of a problem. > > Hi John, If you need a fine resolution high speed clock source, why don't you try the new technology Direct Digital Synthesizer, Like AD9850, it can generate up to 42MHz with a 125MHz clock input , output tuning resolution of 0.0291 Hz. The AD9850 also contains a high speed comparator which can be configured to accept the (externally) filtered output of the DAC to generate a low jitter square wave output. But the cost is much higher. Jerry Meng, BA1FB mailto:ba1fb@qsl.net mailto:ba1fb@amsat.org http://www.qsl.net/ba1fb