AnsweredAssumed Answered

Why are common parts of LPC_UARTn_TypeDef's different?

Question asked by David Sudolcan on Oct 10, 2018
Latest reply on Oct 11, 2018 by jeremyzhou

This question is in regard to this LPC407x_8x_177x_8x.h header file.

* $Id$  LPC407x_8x_177x_8x.h   2012-04-25
 * @file     LPC407x_8x_177x_8x.h
 * @brief    CMSIS Cortex-M4 Cortex-M3 Peripheral Access Layer Header File for
 *           NXP LPC407x_8x_177x_8x.
 * @version  V0.7
 * @date     20. June 2012
 * @author NXP MCU SW Application Team
* Copyright(C) 2012, NXP Semiconductor
* All rights reserved.

Why are 8-bit values, such as THR, defined as 8-bit values for all but UART4, which is defined as a 32-bit value?


All the fields in the LPC_UART4_TypeDef are defined as 32-bit values, but not the other UART typedefs.  The datasheet shows the same info for fields like THR for all the different types of UARTs, but this header file defines them differently.  This causes issues for my generic UART class, that I can work around by typecasting, but this seems like these are errors in your header file.