Reply by Gary Schnabl March 15, 20052005-03-15
"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