??? 07/07/06 10:24 Read: times |
#119797 - frequency of a digital pulse |
hey friends,i'm working on atmel microcontrollers using it to calculate the frequency of any external wave.i'm giving the external pulse at pin INT0/3_2 which flags an interrupt at every positive edge.and timer0 is used in 16-bit mode to find the time during which INT0 pin is high.but my code is not working.pls suggest me mistakes in my work if one fids one.below is a part of my code:
void main(void){ TMOD = 0x09; TH0 = 0; TL0 = 0; TR0 = 0; IPL0 = 0x01; IPH0 = 0x01; IEN0 = 0x81; while(1); } void externalinterrupt(void) interrupt 0 { if(!flag){ TR0 = 1; flag = !flag; } if(flag){ TR0 = 0; IEN0 = 0x00; flag = !flag; timercounts = (TH0*256) + TL0; time = timercounts/921583; rpm = (unsigned int)(30/time); } } |
Topic | Author | Date |
frequency of a digital pulse | 01/01/70 00:00 | |
Variable definitions ? | 01/01/70 00:00 | |
Please post formatted code | 01/01/70 00:00 | |
Some points: | 01/01/70 00:00 | |
misconceptions cleared | 01/01/70 00:00 | |
inappropiate response | 01/01/70 00:00 | |
the entire problem again | 01/01/70 00:00 | |
flag=!flag ? | 01/01/70 00:00 | |
The value of Flag is known! | 01/01/70 00:00 | |
I see, but I don't C | 01/01/70 00:00 | |
It's illogical, Captain... | 01/01/70 00:00 | |
It is worse than that![]() | 01/01/70 00:00 | |
nope | 01/01/70 00:00 | |
Please post formatted code!! | 01/01/70 00:00 | |
he did follow the instructions | 01/01/70 00:00 | |
Oh no he didn't! | 01/01/70 00:00 | |
Argument | 01/01/70 00:00 | |
well, I saw the indentions and - shame | 01/01/70 00:00 | |
formatted code................. | 01/01/70 00:00 | |
thus therefore undefined | 01/01/70 00:00 | |
Formatted, but not the same code! | 01/01/70 00:00 | |
2 problems off the top | 01/01/70 00:00 | |
a blatant understatement | 01/01/70 00:00 | |
Implicit casting mess. | 01/01/70 00:00 | |
commentless code is worthless | 01/01/70 00:00 |