While generating a minimal test case I discovered that the feature works
exactly as advertised, no funky NOP's needed.  So, my problem was
(naturally) my own clumsiness.  

I don't know why (yet) but I am guessing that by resetting the CLKPR in my
interrupt handler I ran a-foul of a classic failure: my state variable
tracking the CPU speed was not declared volatile and would get out of phase
every so often (one hint was the regularity that the speed change failed,
about once every four control cycles...)

The speed change works reliably after I pulled the reset out of the handler
and put everything into the main loop.

Cheers!

| -----Original Message-----
| From: Joerg Wunsch [mailto:[EMAIL PROTECTED]
| Sent: Tuesday, October 03, 2006 9:42 PM
| To: avr-gcc-list@nongnu.org
| Cc: [EMAIL PROTECTED]
| Subject: Re: [avr-gcc-list] OT: anyone successfully use the CLKPR feature
| in themega88?
| 
| "larry barello" <[EMAIL PROTECTED]> wrote:
| 
| > The overt symptoms are that the clock doesn't bump up reliably.  I
| > suspect that it doesn't bump down reliably either, but at 11mhz &
| > 50hz timer tick I wouldn't notice the code taking several tries.
| 
| You could always program the CKOUT fuse (provided your stuff connected
| to PORT B0 would tolerate that), and monitor the clock frequency
| change.
| 
| --
| cheers, J"org               .-.-.   --... ...--   -.. .  DL8DTL
| 
| http://www.sax.de/~joerg/                        NIC: JW11-RIPE
| Never trust an operating system you don't have sources for. ;-)




_______________________________________________
AVR-GCC-list mailing list
AVR-GCC-list@nongnu.org
http://lists.nongnu.org/mailman/listinfo/avr-gcc-list

Reply via email to