EmbeddedRelated.com
Forums

PWMEMR register, what is it?

Started by Thomas Varghese July 13, 2005
Hello,

My apologies if this has been beaten to death but I couldn't find a
satisfactory answer.

I'm trying to implement a PWM output on an LPC2138, I see that the
Keil example uses an PWMEMR register, but I couldn't find the register
in the Philips documentation, nor in the include files under IAR. The
"Insiders Guide to ARM7-Based Microcontrollers" also has the same
example and specifically says this register has to be set otherwise
things will not work correctly.

I did find an address of 0xE001403C in the Keil include files. Does
this have a different name under IAR or the regular Philips docs?

Any help/pointers would be appreciated.

Thanks.

--
Tom V.


An Engineer's Guide to the LPC2100 Series

Not sure about the 2138, but lpc210x.h has:

#define PWM_EMR (*((volatile unsigned long *) 0xE001403C))

Is this what you're looking for?

Jim

On 7/13/05, Thomas Varghese <tomv@tomv...> wrote:
> Hello,
>
> My apologies if this has been beaten to death but I couldn't find a
> satisfactory answer.
>
> I'm trying to implement a PWM output on an LPC2138, I see that the
> Keil example uses an PWMEMR register, but I couldn't find the register
> in the Philips documentation, nor in the include files under IAR. The
> "Insiders Guide to ARM7-Based Microcontrollers" also has the same
> example and specifically says this register has to be set otherwise
> things will not work correctly.
>
> I did find an address of 0xE001403C in the Keil include files. Does
> this have a different name under IAR or the regular Philips docs?
>
> Any help/pointers would be appreciated.
>
> Thanks.
>
> --
> Tom V. > Yahoo! Groups Links >
>


--
----------------------
Jim Parziale
Email: nuncio.bitis@nunc...
Malden, MA
----------------------



Hello,

I was actually looking for a description of this register, it does not
appear to be documented anywhere that I know of.

The other question I have is if setting this register is even
necessary, most examples that I have run across don't set this
register. The book mentioned previously says that this register must
be set. Just trying to figure out what I really need to do to make
PWM work reliably. Any recommendations, examples that work, etc?

Thanks. --- In lpc2000@lpc2..., Jim Parziale <nuncio.bitis@g...> wrote:
> Not sure about the 2138, but lpc210x.h has:
>
> #define PWM_EMR (*((volatile unsigned long *) 0xE001403C))
>
> Is this what you're looking for?
>
> Jim
>
> On 7/13/05, Thomas Varghese <tomv@t...> wrote:
> > Hello,
> >
> > My apologies if this has been beaten to death but I couldn't find a
> > satisfactory answer.
> >
> > I'm trying to implement a PWM output on an LPC2138, I see that the
> > Keil example uses an PWMEMR register, but I couldn't find the register
> > in the Philips documentation, nor in the include files under IAR. The
> > "Insiders Guide to ARM7-Based Microcontrollers" also has the same
> > example and specifically says this register has to be set otherwise
> > things will not work correctly.
> >
> > I did find an address of 0xE001403C in the Keil include files. Does
> > this have a different name under IAR or the regular Philips docs?
> >
> > Any help/pointers would be appreciated.
> >
> > Thanks.
> >
> > --
> > Tom V.
> >
> >
> >
> >
> >
> > Yahoo! Groups Links
> >
> >
> >
> >
> >
> >
> > --
> ----------------------
> Jim Parziale
> Email: nuncio.bitis@g...
> Malden, MA
> ----------------------


Hello Thomas,
i contacted the keil support because of this example and that special
register. They confirmed, that the comments in this example are wrong
and they told me, that this register is "confidential". They couldn't
give me a description of it, but they promised me, that Keil would
provide an example without this register " in the next days". That was
in December 2004.

Klaus --- In lpc2000@lpc2..., "Thomas Varghese" <tomv@t...> wrote:
> Hello,
>
> My apologies if this has been beaten to death but I couldn't find a
> satisfactory answer.
>
> I'm trying to implement a PWM output on an LPC2138, I see that the
> Keil example uses an PWMEMR register, but I couldn't find the register
> in the Philips documentation, nor in the include files under IAR. The
> "Insiders Guide to ARM7-Based Microcontrollers" also has the same
> example and specifically says this register has to be set otherwise
> things will not work correctly.
>
> I did find an address of 0xE001403C in the Keil include files. Does
> this have a different name under IAR or the regular Philips docs?
>
> Any help/pointers would be appreciated.
>
> Thanks.
>
> --
> Tom V.


Hi,
Regarding the PWMEMR Register:
This is not a "secret register". In a preliminary version of the
User's Manual, this register was mentioned (as the PWM block is
closely related to the Timer blocks). This might be the reason why
Keil has mentioned this register in their header file. However, the
user doesn't need to do anything with this register in his PWM code.
This register can be simply disregarded.
We actually just noticed that the official LPC213x User's Manual is
now (finally) on the Philips Web site (not sure if this was
mentioned already):
http://www.semiconductors.philips.com/acrobat_download/usermanuals/UM
10120_1.pdf
We scanned it and as expected there is no reference to the PWMEMR
register anywhere.

Regards,
LPC Tools
http://www.lpctools.com

--- In lpc2000@lpc2..., "Klaus" <klaus276@y...> wrote:
> Hello Thomas,
> i contacted the keil support because of this example and that
special
> register. They confirmed, that the comments in this example are
wrong
> and they told me, that this register is "confidential". They
couldn't
> give me a description of it, but they promised me, that Keil would
> provide an example without this register " in the next days". That
was
> in December 2004.
>
> Klaus > --- In lpc2000@lpc2..., "Thomas Varghese" <tomv@t...>
wrote:
> > Hello,
> >
> > My apologies if this has been beaten to death but I couldn't
find a
> > satisfactory answer.
> >
> > I'm trying to implement a PWM output on an LPC2138, I see that
the
> > Keil example uses an PWMEMR register, but I couldn't find the
register
> > in the Philips documentation, nor in the include files under
IAR. The
> > "Insiders Guide to ARM7-Based Microcontrollers" also has the same
> > example and specifically says this register has to be set
otherwise
> > things will not work correctly.
> >
> > I did find an address of 0xE001403C in the Keil include files.
Does
> > this have a different name under IAR or the regular Philips docs?
> >
> > Any help/pointers would be appreciated.
> >
> > Thanks.
> >
> > --
> > Tom V.