Yahoo Groups archive

Lpc2000

Index last updated: 2026-04-28 23:31 UTC

Thread

Setting EXTPOLAR and EXTMODE bit 0

Setting EXTPOLAR and EXTMODE bit 0

2005-10-18 by bell_c_d

I'm trying to set EXTINT0 to active-high, edge-sensitive (i.e. set 
EXTPOLAR and EXTMODE to 1), but am unable to set/read back bit 0 in 
either of the registers.  FWIW, bit 1 (for EXTINT1) sets/reads back 
successfully.  

The code sample below looks correct.  Does anyone have any ideas?

	byte b=EXTPOLAR;
   	E3A0320E   mov r3, #0xE0000000
   	E283397F   add r3, r3, #0x001FC000
   	E3A02F53   mov r2, #0x0000014C
   	E7D33002   ldrb r3, [r3, r2]
   	E54B300D   strb r3, [r11, #-13]
	EXTPOLAR = 1; // set EXTINT0 active high
   	E3A0220E   mov r2, #0xE0000000
   	E282297F   add r2, r2, #0x001FC000
   	E3A01F53   mov r1, #0x0000014C
   	E3A03001   mov r3, #0x00000001
   	E7C23001   strb r3, [r2, r1]
	b=EXTPOLAR;	
   	E3A0320E   mov r3, #0xE0000000
   	E283397F   add r3, r3, #0x001FC000
   	E3A02F53   mov r2, #0x0000014C
   	E7D33002   ldrb r3, [r3, r2]
   	E54B300D   strb r3, [r11, #-13]
	b=EXTMODE;	
   	E3A0320E   mov r3, #0xE0000000
   	E283397F   add r3, r3, #0x001FC000
   	E3A02F52   mov r2, #0x00000148
   	E7D33002   ldrb r3, [r3, r2]
   	E54B300D   strb r3, [r11, #-13]
	EXTMODE = 1; // set EXTINT0 edge-sensitive
   	E3A0220E   mov r2, #0xE0000000
   	E282297F   add r2, r2, #0x001FC000
   	E3A01F52   mov r1, #0x00000148
   	E3A03001   mov r3, #0x00000001
   	E7C23001   strb r3, [r2, r1]
	b=EXTMODE;	
   	E3A0320E   mov r3, #0xE0000000
   	E283397F   add r3, r3, #0x001FC000
   	E3A02F52   mov r2, #0x00000148
   	E7D33002   ldrb r3, [r3, r2]
   	E54B300D   strb r3, [r11, #-13]

Re: [lpc2000] Setting EXTPOLAR and EXTMODE bit 0

2005-10-18 by Richard Duits

The EXTMODE and EXTPOLAR have some serious bugs for all but the latest 
LPCs. I suggest you look at the errata for the chip you are using.

Richard Duits.


bell_c_d wrote:
Show quoted textHide quoted text
> I'm trying to set EXTINT0 to active-high, edge-sensitive (i.e. set
> EXTPOLAR and EXTMODE to 1), but am unable to set/read back bit 0 in
> either of the registers.  FWIW, bit 1 (for EXTINT1) sets/reads back
> successfully. 
>
> The code sample below looks correct.  Does anyone have any ideas?
>
>       byte b=EXTPOLAR;
>          E3A0320E   mov r3, #0xE0000000
>          E283397F   add r3, r3, #0x001FC000
>          E3A02F53   mov r2, #0x0000014C
>          E7D33002   ldrb r3, [r3, r2]
>          E54B300D   strb r3, [r11, #-13]
>       EXTPOLAR = 1; // set EXTINT0 active high
>          E3A0220E   mov r2, #0xE0000000
>          E282297F   add r2, r2, #0x001FC000
>          E3A01F53   mov r1, #0x0000014C
>          E3A03001   mov r3, #0x00000001
>          E7C23001   strb r3, [r2, r1]
>       b=EXTPOLAR;     
>          E3A0320E   mov r3, #0xE0000000
>          E283397F   add r3, r3, #0x001FC000
>          E3A02F53   mov r2, #0x0000014C
>          E7D33002   ldrb r3, [r3, r2]
>          E54B300D   strb r3, [r11, #-13]
>       b=EXTMODE;     
>          E3A0320E   mov r3, #0xE0000000
>          E283397F   add r3, r3, #0x001FC000
>          E3A02F52   mov r2, #0x00000148
>          E7D33002   ldrb r3, [r3, r2]
>          E54B300D   strb r3, [r11, #-13]
>       EXTMODE = 1; // set EXTINT0 edge-sensitive
>          E3A0220E   mov r2, #0xE0000000
>          E282297F   add r2, r2, #0x001FC000
>          E3A01F52   mov r1, #0x00000148
>          E3A03001   mov r3, #0x00000001
>          E7C23001   strb r3, [r2, r1]
>       b=EXTMODE;     
>          E3A0320E   mov r3, #0xE0000000
>          E283397F   add r3, r3, #0x001FC000
>          E3A02F52   mov r2, #0x00000148
>          E7D33002   ldrb r3, [r3, r2]
>          E54B300D   strb r3, [r11, #-13]
>
>
>
>
>
>
> ------------------------------------------------------------------------
> YAHOO! GROUPS LINKS
>
>     *  Visit your group "lpc2000
>       <http://groups.yahoo.com/group/lpc2000>" on the web.
>        
>     *  To unsubscribe from this group, send an email to:
>        lpc2000-unsubscribe@yahoogroups.com
>       <mailto:lpc2000-unsubscribe@yahoogroups.com?subject=Unsubscribe>
>        
>     *  Your use of Yahoo! Groups is subject to the Yahoo! Terms of
>       Service <http://docs.yahoo.com/info/terms/>.
>
>
> ------------------------------------------------------------------------
>

Re: Setting EXTPOLAR and EXTMODE bit 0

2005-10-18 by bell_c_d

Thanks, I just found the workaround in the errata.

--- In lpc2000@yahoogroups.com, Richard Duits <yahoo@r...> wrote:
>
> The EXTMODE and EXTPOLAR have some serious bugs for all but the 
latest 
> LPCs. I suggest you look at the errata for the chip you are using.
> 
> Richard Duits.
> 
> 
> bell_c_d wrote:
> 
> > I'm trying to set EXTINT0 to active-high, edge-sensitive (i.e. 
set
> > EXTPOLAR and EXTMODE to 1), but am unable to set/read back bit 0 
in
> > either of the registers.  FWIW, bit 1 (for EXTINT1) sets/reads 
back
> > successfully. 
> >
> > The code sample below looks correct.  Does anyone have any ideas?
> >
> >       byte b=EXTPOLAR;
> >          E3A0320E   mov r3, #0xE0000000
> >          E283397F   add r3, r3, #0x001FC000
> >          E3A02F53   mov r2, #0x0000014C
> >          E7D33002   ldrb r3, [r3, r2]
> >          E54B300D   strb r3, [r11, #-13]
> >       EXTPOLAR = 1; // set EXTINT0 active high
> >          E3A0220E   mov r2, #0xE0000000
> >          E282297F   add r2, r2, #0x001FC000
> >          E3A01F53   mov r1, #0x0000014C
> >          E3A03001   mov r3, #0x00000001
> >          E7C23001   strb r3, [r2, r1]
> >       b=EXTPOLAR;     
> >          E3A0320E   mov r3, #0xE0000000
> >          E283397F   add r3, r3, #0x001FC000
> >          E3A02F53   mov r2, #0x0000014C
> >          E7D33002   ldrb r3, [r3, r2]
> >          E54B300D   strb r3, [r11, #-13]
> >       b=EXTMODE;     
> >          E3A0320E   mov r3, #0xE0000000
> >          E283397F   add r3, r3, #0x001FC000
> >          E3A02F52   mov r2, #0x00000148
> >          E7D33002   ldrb r3, [r3, r2]
> >          E54B300D   strb r3, [r11, #-13]
> >       EXTMODE = 1; // set EXTINT0 edge-sensitive
> >          E3A0220E   mov r2, #0xE0000000
> >          E282297F   add r2, r2, #0x001FC000
> >          E3A01F52   mov r1, #0x00000148
> >          E3A03001   mov r3, #0x00000001
> >          E7C23001   strb r3, [r2, r1]
> >       b=EXTMODE;     
> >          E3A0320E   mov r3, #0xE0000000
> >          E283397F   add r3, r3, #0x001FC000
> >          E3A02F52   mov r2, #0x00000148
> >          E7D33002   ldrb r3, [r3, r2]
> >          E54B300D   strb r3, [r11, #-13]
> >
> >
> >
> >
> >
> >
> > -----------------------------------------------------------------
-------
> > YAHOO! GROUPS LINKS
> >
> >     *  Visit your group "lpc2000
> >       <http://groups.yahoo.com/group/lpc2000>" on the web.
> >        
> >     *  To unsubscribe from this group, send an email to:
> >        lpc2000-unsubscribe@yahoogroups.com
> >       <mailto:lpc2000-unsubscribe@yahoogroups.com?
subject=Unsubscribe>
> >        
> >     *  Your use of Yahoo! Groups is subject to the Yahoo! Terms 
of
> >       Service <http://docs.yahoo.com/info/terms/>.
> >
> >
> > -----------------------------------------------------------------
-------
> >
>

Re: Setting EXTPOLAR and EXTMODE bit 0

2005-10-18 by bell_c_d

Followup- it's still not possible to set bit 0 in EXTMODE/EXTPOLAR 
even using the workaround suggested in the errata, but I was able to 
workaround this further limitation by setting bits for other EXTINTs 
along with bit 0.  I'm only using EXTINT0 but hopefully changing the 
polarity of unused interrupts isn't going to mess anything up.

--- In lpc2000@yahoogroups.com, "bell_c_d" <bell_c_d@y...> wrote:
>
> Thanks, I just found the workaround in the errata.
> 
> --- In lpc2000@yahoogroups.com, Richard Duits <yahoo@r...> wrote:
> >
> > The EXTMODE and EXTPOLAR have some serious bugs for all but the 
> latest 
> > LPCs. I suggest you look at the errata for the chip you are 
using.
> > 
> > Richard Duits.
> > 
> > 
> > bell_c_d wrote:
> > 
> > > I'm trying to set EXTINT0 to active-high, edge-sensitive (i.e. 
> set
> > > EXTPOLAR and EXTMODE to 1), but am unable to set/read back bit 
0 
> in
> > > either of the registers.  FWIW, bit 1 (for EXTINT1) sets/reads 
> back
> > > successfully. 
> > >
> > > The code sample below looks correct.  Does anyone have any 
ideas?
> > >
> > >       byte b=EXTPOLAR;
> > >          E3A0320E   mov r3, #0xE0000000
> > >          E283397F   add r3, r3, #0x001FC000
> > >          E3A02F53   mov r2, #0x0000014C
> > >          E7D33002   ldrb r3, [r3, r2]
> > >          E54B300D   strb r3, [r11, #-13]
> > >       EXTPOLAR = 1; // set EXTINT0 active high
> > >          E3A0220E   mov r2, #0xE0000000
> > >          E282297F   add r2, r2, #0x001FC000
> > >          E3A01F53   mov r1, #0x0000014C
> > >          E3A03001   mov r3, #0x00000001
> > >          E7C23001   strb r3, [r2, r1]
> > >       b=EXTPOLAR;     
> > >          E3A0320E   mov r3, #0xE0000000
> > >          E283397F   add r3, r3, #0x001FC000
> > >          E3A02F53   mov r2, #0x0000014C
> > >          E7D33002   ldrb r3, [r3, r2]
> > >          E54B300D   strb r3, [r11, #-13]
> > >       b=EXTMODE;     
> > >          E3A0320E   mov r3, #0xE0000000
> > >          E283397F   add r3, r3, #0x001FC000
> > >          E3A02F52   mov r2, #0x00000148
> > >          E7D33002   ldrb r3, [r3, r2]
> > >          E54B300D   strb r3, [r11, #-13]
> > >       EXTMODE = 1; // set EXTINT0 edge-sensitive
> > >          E3A0220E   mov r2, #0xE0000000
> > >          E282297F   add r2, r2, #0x001FC000
> > >          E3A01F52   mov r1, #0x00000148
> > >          E3A03001   mov r3, #0x00000001
> > >          E7C23001   strb r3, [r2, r1]
> > >       b=EXTMODE;     
> > >          E3A0320E   mov r3, #0xE0000000
> > >          E283397F   add r3, r3, #0x001FC000
> > >          E3A02F52   mov r2, #0x00000148
> > >          E7D33002   ldrb r3, [r3, r2]
> > >          E54B300D   strb r3, [r11, #-13]
> > >
> > >
> > >
> > >
> > >
> > >
> > > ---------------------------------------------------------------
--
> -------
> > > YAHOO! GROUPS LINKS
> > >
> > >     *  Visit your group "lpc2000
> > >       <http://groups.yahoo.com/group/lpc2000>" on the web.
> > >        
> > >     *  To unsubscribe from this group, send an email to:
> > >        lpc2000-unsubscribe@yahoogroups.com
> > >       <mailto:lpc2000-unsubscribe@yahoogroups.com?
> subject=Unsubscribe>
> > >        
> > >     *  Your use of Yahoo! Groups is subject to the Yahoo! 
Terms 
> of
> > >       Service <http://docs.yahoo.com/info/terms/>.
> > >
> > >
> > > ---------------------------------------------------------------
--
Show quoted textHide quoted text
> -------
> > >
> >
>

Move to quarantaine

This moves the raw source file on disk only. The archive index is not changed automatically, so you still need to run a manual refresh afterward.