Hi,
By measuring the period between one zero cross to other it is possible to to get the frequency of the input frequency. If you are turning off the TRIACS/SCR while a zero cross occurs then there should be no problem. All you need is a timer locked to the first AC input (R) and have some pseudo timers running in software which gets reset at zero cross signals from the other sources (You need 3 interrupt sources). The only problem is that with a 8 bit timer you get a low resolution. With one 16 bit and 2 virtual 16 bit counters the process is further complicated. I posted a thread (I do not remember now) for dimming various channel with a PIC16F84. It was not tested by me and basically an adaption of my big brother program. It is heavily commented and might help out in your algo design.
My suggestions are :
1. Strictly asm interrupts
2. High Priority 18F interrupt vector
3. High Oscillator speed (I use x4 PLL @ 10 MHz with 18F452 )
My design is a commercial one and cannot share the code thus. However always willing to help out (within my scope of little knowledge).
I have the habbit of looking into the PRO forum only so overlooked this thread.
BTW Pramod I lost your telephone number. One of my partner is right now in Delhi for some component purchase and needs your assistance. Please drop me a private mail or to my regular email with your Phone No.
Thanks and Regards
Sougata
Bookmarks