From: Soeren Gust <gust@...> In terms of increasing UART performance, I agree about not using Thumb, especially as the IRQ entry/exit code must be in ARM. I also agree with the comment about using structures to gain base+offset addressing. 1) Set up the MAM - major impact 2) Consider x2 PLL 3) Set up the UART FCR register to use the FIFOs by interrupting every n characters. This reduces the number of interrupts considerably. You have to poll the LSR in the interrupt routine to empty the FIFO. Don't worry about missing the last few characters, the UART will interrupt after a time if the FIFO is part full. 4) You can reduce the interrupt latency by making the IRQ vector contain: ldr pc, [ pc, # $-FF0 ] which reads the vector address directly. There is a slight cost in that each ISR needs its own entry/exit code. Note also that if you want to nest interrupts, you MUST switch to another mode - SVC is the usual one to use. 2106 boards with a USB connection will be available from MPE in a few weeks. Software will include an on-chip Forth interpreter, evaluation versions of the MPE VFX Forth cross compiler and Rowley Crossworks C compiler, and we may even get round to a BASIC. Stephen -- Stephen Pelc, stephen@... MicroProcessor Engineering Ltd - More Real, Less Time 133 Hill Lane, Southampton SO15 5AF, England tel: +44 23 80 631441, fax: +44 23 80 339691 web: http://www.mpeltd.demon.co.uk - free VFX Forth downloads
Message
Interrupt works in Keil simulator but not in target
2004-02-12 by Stephen Pelc
Attachments
- No local attachments were found for this message.