Sorry for the SETBITS....they are defines. SETBIT1=0x02 and
SETBIT15=0x8000 (as you said) (try to remember what number have to
be ORed with your register just to set your 26th bit and you'll see
that this is very useful)...
I'm using LPC2129.
According to the User Manual bits 7:6 = 11 sets EINT1 for P0.3..so
we have 0xC0.
EXTMODE is the External Mode Register... Selects if I'll have a
level or edge sensitive interrupt ( I've set to have an edge
sensitive).
Well how do I know that I'm receiving the RDY? An osciloscope...:-))
I'm running with a ULINK debugger and according to the simulator,
the EINT1 bit from EXTINT register is set...this means that
interrupt flag is set but the routine was not called...
About the assembly and compilers I completely agree with you...I've
always had problems with PIC compilers ( especially CCS) and thanks
to my knowledge on PIC assembly language I could solve problems, but
in this case if I could work in a higher level, better, if not...
--- In lpc2000@yahoogroups.com, Robert Adsett <subscriptions@a...>
wrote:
> At 06:17 PM 6/7/04 +0000, you wrote:
> >I'm using the BlinkIRQ startup example. One line of the file is:
> >
> > LDR PC, [PC, #-0x0FF0] /* Vector from VicVectAddr */
>
> That's what I was referring to. I just want to verify. Lets take
a closer
> look.
>
>
> >this is the address 0x18...Well I think that, when a interrupt
> >occurs, my program goes to address 0x18, which redirects to the
> >address loaded in the VICVectAddr... In the Blink example just the
> >VIC and TIMER0 register are adjusted...I'm a begginer with the ARM
> >Arquitecture, and I don't have time now to learn ARM or THUMB
> >Assembly, maybe after this project I can study more, now I need to
> >solve all problems ACAP ( As C As Possible ) :-)
>
> Every time It's bitten me I've found I would have saved much more
time
> simply learning a little of the MCU assembly language concerned.
I've
> stopped considering the compilers proprietary interrupt keywords
helpful :)
>
>
> --- In lpc2000@yahoogroups.com, Robert Adsett <subscriptions@a...>
> >wrote:
> > > At 05:02 PM 6/7/04 +0000, you wrote:
> > > >signal. I'm supposed to use it as an ExtInt...I did the
following
> > > >setup sequence:
> > > >
>
> I'm assuming you are using a 2104/5/6?
>
> > > >EXTMODE = SETBIT1;//Interrupção na borda de descida
>
> Two questions. What's EXTMODE? and What's SETBIT1?
>
> > > >PINSEL0 |= 0x000000C0;//P0.3 ajustado para EINT1
>
> Shouldn't this be something more like
>
> PINSEL0 |= 0x20000000;
>
> I believe you've set P0.3 to a reserved state.
>
> > > >VICVectAddr0 =(unsigned long)ADISR; //redireciona vetor para
> >função
> > > >VICVectCntl0 = 0x20 | 15; //Seta vetor de interrupção para
INT1
> > > >VICIntEnable = SETBIT15; //Habilita interrupção INT1
>
> What is SETBIT15? (0x8000 maybe?)
>
> I'd suspect the setting of PINSEL0.
>
> More questions. How do you know if the external interrupt was
responded
> to? And if it only responded once how likely are you to miss it?
>
> Robert
>
>
> " 'Freedom' has no meaning of itself. There are always
restrictions,
> be they legal, genetic, or physical. If you don't believe me, try
to
Show quoted textHide quoted text
> chew a radio signal. "
>
> Kelvin Throop, III