|
From: | Philipp Burch |
Subject: | Re: [avr-gcc-list] altering array variable and interrupts |
Date: | Tue, 15 Jan 2008 19:24:17 +0100 |
User-agent: | Thunderbird 2.0.0.9 (Windows/20071031) |
Hi,I guess, your ISR takes too long. Delayloops in ISRs are very, very bad style, because they block the whole CPU. I suppose, the Interrupt comes more often than every 3ms, so there is no way for the AVR to execute any code outside the ISR. You should rewrite the complete program, there are many unnecessary things, such as character generation at runtime. Just declare a PROGMEM array with all your digits and read from it with pgm_read_byte() (From avr/pgmspace.h, check the manual of avr-libc), that saves RAM and initialization work. And it prevents the characters from getting modified (Or do you really need this "feature"?).
Philipp
sorry I forgot to put url: http://rafb.net/p/fxrljj42.html------------------------------------------------------------------------Looking for last minute shopping deals? Find them fast with Yahoo! Search. <http://us.rd.yahoo.com/evt=51734/*http://tools.search.yahoo.com/newsearch/category.php?category=shopping>------------------------------------------------------------------------ _______________________________________________ AVR-GCC-list mailing list address@hidden http://lists.nongnu.org/mailman/listinfo/avr-gcc-list
[Prev in Thread] | Current Thread | [Next in Thread] |