"mpcuser" <kmorin@uoguelph.ca> wrote in message
news:173a592f.0503141433.1039e4fa@posting.google.com...
> Hello,
> I'm using the MPC500 quickstart libraries, but I'm having trouble
> using external interrupts. My board is a PB-0555 manufactured by
> Axiom, and I'm using Codewarrior. I'm using the following code to
> initialize external interrupts:
>
> int init(void)
> {
>
> ioctl(USIU, USIUINT_INIT, NULL);
>
> /* enable external interrupts - i.e. set MSR[EE] and MSR[RI] bits */
> archEnableInt();
>
> return 1;
> }
>
> My appconfig.h file contains the following interrupt configuration:
>
> #define IRQ_2_ENABLED 0x01
> void irq_testISR(void);
> #define IRQ_2_ISR_ADDR irq_testISR
> #define IRQ_2_TRIGGER 0x01
>
> I've stepped through the execution of the program, and everything
> seems to run fine; but when I ground the IRQ[2] pin on my board, the
> ISR does not get executed. I'm grounding it through a 4.7k, and I'm
> sure I'm using the right pin. Could someone show me where I've gone
> wrong? Also, is the 4.7k necessary? Do the eternal interrupts already
> have current-limiting resistors? Thanks for your help!
>
> - Kevin
You will receive more and speedier responses in either the Metrowerks
Community forums:
Metrowerks.com/community or in the codewarrior.embedded newsgroup.
Personally, I do mostly 8/16 or DSP CodeWarrior so I cannot be of much help.
This older link may help though, but I haven't taken the time to delve into
it yet: http://www.ee.ualberta.ca/~jasmith/mpc555/faq.html
Gary Schnabl
Detroit
Reply by mpcuser●March 14, 20052005-03-14
Hello,
I'm using the MPC500 quickstart libraries, but I'm having trouble
using external interrupts. My board is a PB-0555 manufactured by
Axiom, and I'm using Codewarrior. I'm using the following code to
initialize external interrupts:
int init(void)
{
ioctl(USIU, USIUINT_INIT, NULL);
/* enable external interrupts - i.e. set MSR[EE] and MSR[RI] bits */
archEnableInt();
return 1;
}
My appconfig.h file contains the following interrupt configuration:
#define IRQ_2_ENABLED 0x01
void irq_testISR(void);
#define IRQ_2_ISR_ADDR irq_testISR
#define IRQ_2_TRIGGER 0x01
I've stepped through the execution of the program, and everything
seems to run fine; but when I ground the IRQ[2] pin on my board, the
ISR does not get executed. I'm grounding it through a 4.7k, and I'm
sure I'm using the right pin. Could someone show me where I've gone
wrong? Also, is the 4.7k necessary? Do the eternal interrupts already
have current-limiting resistors? Thanks for your help!
- Kevin