??? 11/25/04 12:18 Read: times |
#81919 - Tried PCA! Responding to: ???'s previous message |
Dear Forum Members,
I have modified my hardware a bit by giving the zero cross pulse to PCA module 0 pin P1.3 and also modified my software to synchronize my timer 1 i.e. used for fire timing with zero cross using PCA module 0 capture feature. I have set the PCA module 0 to capture both negative and postive going transitions. Here is my Initialization code. /*Initializing the envoirment*/ void init_ios(void) { ioport=0xf0; P3=0xff; FIREPORT=1; IE=0; RCAP2H=0xfa; //ADC sampling 20 samples per cycle RCAP2L=0xca; T2CON=0x00; TMOD=0x21; //Timer 0 in 16 bit timer 1 8 bit autoreload. CH=0x00; //clear PCA base counter. CL=0x00; CMOD=0x00; //PCA clock sourc Fosc/6; CCAPM0=0x31; //Put module 0 in capture mode. both transistions. CCON=0x40; //PCA start; TH1=0x7a; //system timer ticks once 100us. TF1=0; IP=0x60; //PCA highest and timet 1 higher priority set. IPH=0x48; IE=0x00; EA=1; //Enabling global interrupts. EC=1; //Enabling PCA interrupt; ET1=1; //Enabling timer 1 interrupt. TR1=1; //Start timer 1. } and here are my ISR for PCA and timer 1. /*********Interrupt function for timer 1**************** This interrupt is always on and is 100us*/ void t1_isr(void) interrupt 3 { SYSTIME++; //increament the SYSTIME variable used for fire timing if (SYSTIME>firedly && firecount && ttbit && onfire) { FIREPORT=!FIREPORT; //Put the fire pulse firecount--; //Reduce remining pulse counter. } else FIREPORT=1; //Make fire pin 1 to keep transistor off. ttbit=!ttbit; //fwbit to make firing pulse 200us } /*ISR for PCA modules 0 This interrupt is always ON*/ void cf_isr(void) interrupt 6 using 2 { firecount=6; //set 6 pulses to be sent. fwbit=!fwbit; if (fwbit) cycles++; //Increament cycles every 2 half cycles. ioport=OPSTATUS; //Refresh Output ports. SYSTIME=0x00; //Reset SYSTIME variable. CCF0=0; //clear the interrupt flag. } Even after doing above ie. properly synchronising the timer 1 with zero cross flickering remains as it is there is no change at all I have been pulling my hairs for past 40 hours but still it is a big mystry. I will get balt within few days if the problem is not solved. Please help me friends. Thanks & Regards, Prahlad Purohit |