I looked at using the IAP to get the bootloader version (thinking
that only the newer parts would have the later bootloader v1.68), but
then noticed that NXP have brought out a later version (v1.69) for
the now obsolete /00 parts !! which kind of threw a spanner in the
works there !
Regards,
Simon.
--- In l..., "kendwyer" wrote: >
> Hi Simon,
>
> The "/01" revision devices incorporate an autobaud feature for the
> UARTs. This new register may be used to differentiate them from the
> "old" parts.
> Bit 1 (Mode bit) of the UxACR register must be written with both a '1' > and a '0' value. Verifying (reading back
the same value) each of the
> above operations will test for the revision.
> That is, for the old parts, where this register doesn't exist, one of > the above operations will fail. If both operations
succeed, this means > the register exist, and a /01 revision part was
detected.
>
> Hope this helps!
> Ken
>
> --- In l..., "simonb65" wrote:
> >
> > Hi All,
> >
> > We have a product which has been in production for some time using the > > LPC2129. The newer units now have the LPC2129/01
(as nxp has made the > > earlier revisions obsolote). However, in NXP's
wisdom they have changed > > the CAN channel filtering indexing from 1 & 2 to 0
& 1 !! Which ind of > > screws up our code somewhat !!! Grrrrr !
> >
> > Now, as our current firmware needs to support existing units, does > > anyone know how I can detect if the part is a
LPC2129, LPC2129/00 or > > LPC2129/01 so the code can account for this
indexing at runtime ???? > >
> > Has anyone else hit the same issue ?
> >
> > Why has NXP decided to change a fundamental thing as this halfway
> > though a products lifecycle ???????
> >
> > Regards,
> > Simon.
>
The "/01" revision devices incorporate an autobaud feature for the
UARTs. This new register may be used to differentiate them from the
"old" parts.
Bit 1 (Mode bit) of the UxACR register must be written with both a
'1'
and a '0' value. Verifying (reading back the same value) each of
the
above operations will test for the revision.
That is, for the old parts, where this register doesn't exist, one of
the above operations will fail. If both operations succeed, this means
the register exist, and a /01 revision part was detected.
Hope this helps!
Ken
--- In l..., "simonb65" wrote: >
> Hi All,
>
> We have a product which has been in production for some time using the
> LPC2129. The newer units now have the LPC2129/01 (as nxp has made the
> earlier revisions obsolote). However, in NXP's wisdom they have changed
> the CAN channel filtering indexing from 1 & 2 to 0 & 1 !! Which ind of
> screws up our code somewhat !!! Grrrrr !
>
> Now, as our current firmware needs to support existing units, does
> anyone know how I can detect if the part is a LPC2129, LPC2129/00 or
> LPC2129/01 so the code can account for this indexing at runtime ????
>
> Has anyone else hit the same issue ?
>
> Why has NXP decided to change a fundamental thing as this halfway
> though a products lifecycle ???????
>
> Regards,
> Simon.
>
Reply by simonb65●October 6, 20082008-10-06
Hi All,
We have a product which has been in production for some time using the
LPC2129. The newer units now have the LPC2129/01 (as nxp has made the
earlier revisions obsolote). However, in NXP's wisdom they have changed
the CAN channel filtering indexing from 1 & 2 to 0 & 1 !! Which ind of
screws up our code somewhat !!! Grrrrr !
Now, as our current firmware needs to support existing units, does
anyone know how I can detect if the part is a LPC2129, LPC2129/00 or
LPC2129/01 so the code can account for this indexing at runtime ????
Has anyone else hit the same issue ?
Why has NXP decided to change a fundamental thing as this halfway
though a products lifecycle ???????