??? 06/16/06 12:46 Read: times |
#118409 - Update of the code... Responding to: ???'s previous message |
An update of the code. I just count TempCount again after 1 attempt and the code works, but I don't know why :(
Do you know what was wrong with the code? unsigned short MeasureClockfrequency() { unsigned short TempCount; EA=0; //Make sure RTC is disabled to make it possible to write to RTCH, RTCL and other bits of RTCCON RTCCON = 0x00; RTCCON = 0x00; // set reload value // count frequency = clock source / 128 / RTCH,RTCL RTCH = 0x00; // RTCL = 0x01; RTCL = 0x2F; //RTCPD=1; //First attempt, Result isn't good TempCount=0; // select External crystal oscillator, disable interrupt source RTCCON = 0x00; // start real time clock RTCCON |= 0x01; //Increase counter while the RTC doesn't time-out while (!(RTCCON & 0x80)) TempCount++; // clear RTCF interrupt flag and stop the real time clock RTCCON &= ~0x81; //Try to determine frequency again, this result is good TempCount=0; // select External crystal oscillator, disable interrupt source RTCCON = 0x00; // start real time clock RTCCON |= 0x01; //Increase counter while the RTC doesn't time-out while (!(RTCCON & 0x80)) TempCount++; // clear RTCF interrupt flag and stop the real time clock RTCCON &= ~0x81; EA=1; return TempCount; } |
Topic | Author | Date |
Measuring frequency clock input LPC931 | 01/01/70 00:00 | |
Update of the code... | 01/01/70 00:00 | |
what does "below" mean | 01/01/70 00:00 | |
below 7MHz | 01/01/70 00:00 | |
of course | 01/01/70 00:00 | |
thanks![]() | 01/01/70 00:00 |