Jeff King wrote: > > HJ Simpson wrote: > > > I have a project using up to 20 16F84's on one board. > > I am thinking of clocking all from one source, rather than a xtal on > > each. > You can use either a buffer, or daisy chain it from PIC to PIC. It > really depends on your needs. Are you trying to make each PIC > sync'ed up to the other, or just trying to save some money? > > Daisy chaining it would be cheapest (going from pic to pic). I believe > there is a app note out on this also, I believe they suggest a small > resistor (220 ohm?) between each PIC. Your first PIC would have > the crystal on it. You'd take the output from it (pin 15) and feed it > via the resistor to pin 16 of the next PIC. Then do the same down > the line. The downsides of this approach, as compared to buffering, > is your going to get some phase delay on the oscillator between each > PIC. Also, if one PIC fails, you could lose all clock signals downstream > of that PIC. > > On buffering, you can get the phase of each clock fairly close (with > proper PCB design), and you have the added benefit of if one PIC > fails, you'll not lose everything downstream of that PIC. One of > those TTL DIP pack oscillators should work fine. I'd still isolate > each PIC with a small value resistor. The buffer/resistor would feed > pin 16 of each PIC. > > Now, I have no idea if you could get each PIC sync'ed up to the other > (and even if that is what you want). I'd think it would be hard to impossible > due to the varying delays of the POR and PUT timers. > > Mind if I ask what you need 20 PIC's on the same board for? > > -Jeff Thanks, Jeff, for your advice. I did post before, but I had a local problem and assumed it hadn't gone out. There is no need whatsoever for any relationship in timing or phasing between the pics. I just thought that one Xtal would be cheaper, and perhaps less board work, but this would not necessarily be so, with tracks to all pics. However, daisy chainin sounds reasonable. (Nothing like a resistor to help jump over other tracks! :) The project is twenty independant timers, each displaying on two 7 segment displays - the time set by up/down buttons on each timer. The first timer is started manually, then each timer is started by the timeout of the previous timer. It then runs down to timeout, and starts the next and so on. At each timeout, a relay closes as well, and operates the external equipment, and there are leds indicating what's going on, and a pause button to pause the timer that is running. Because times can be changed "on the fly" (except for the actual timer pic that is counting down) it seemed easier to just have a separate PIC for each. As well, I'm entertaining the idea of having small plug-in boards for each one too, but this may get too messy, as one big board could have all the buttons and leds on it. One could possibly have more than one timer on one pic, but I doubt twenty! Maybe two or three, but there would be a lot of multiplexing and house keeping to run the 7 seg displays, look for time change commands from the up/down buttons, as well as look at the pause button, and keep two or more timers going. I dunno, for the cost of a pic, it seemed more reasonable to have one for each timer. Time increments are one second, by the way, giving a max of 99 seconds. Regards Howard.