
UM10800
All information provided in this document is subject to legal disclaimers.
© NXP Semiconductors N.V. 2016. All rights reserved.
User manual
Rev. 1.2 — 5 October 2016
399 of 487
NXP Semiconductors
UM10800
Chapter 27: LPC82x ROM API USART driver routines
27.4 API description
The UART API contains functions to send and receive characters via any of the USART
blocks.
The following structure has to be defined to use the UART API:
typedef struct UARTD_API { // index of all the uart driver functions
uint32_t (*uart_get_mem_size)(void);
UART_HANDLE_T (*uart_setup)(uint32_t base_addr, uint8_t *ram);
uint32_t (*uart_init)(UART_HANDLE_T handle, UART_CONFIG_T *set);
//--polling functions--//
uint8_t (*uart_get_char)(UART_HANDLE_T handle);
void (*uart_put_char)(UART_HANDLE_T handle, uint8_t data);
uint32_t (*uart_get_line)(UART_HANDLE_T handle, UART_PARAM_T * param);
uint32_t (*uart_put_line)(UART_HANDLE_T handle, UART_PARAM_T * param);
//--interrupt functions--//
void (*uart_isr)(UART_HANDLE_T handle);
} UARTD_API_T ; // end of structure
#define ROM_DRIVER_BASE (0x1FFF1FF8UL)
#define LPC_UART_API ((UARTD_API_T *) ((*(ROM_API_T * *)
(ROM_DRIVER_BASE))->pUARTD))
See
for how to include the ROM driver structure.
27.4.1 UART get memory size
Table 346. UART API calls
API call
Description
Reference
uint32_t ramsize_in_bytes uart_get_mem_size( void) ;
UART get memory size
UART_HANDLE_T* uart_setup(uint32_t base_addr, uint8_t *ram) ;
UART set-up
uint32_t uart_init(UART_HANDLE_T* handle, UART_CONFIG set);
UART init
uint8_t uart_get_char(UART_HANDLE_T* handle);
UART get character
void uart_put_char(UART_HANDLE_T* handle, uint8_t data);
UART put character
uint32_t uart_get_line(UART_HANDLE_T* handle, UART_PARAM_T param);
UART get line
uint32_t uart_put_line(UART_HANDLE_T* handle, UART_PARAM_T param);
UART put line
void uart_isr(UART_HANDLE_T* handle);
UART interrupt service routine
Table 347. uart_get_mem_size
Routine
uart_get_mem_size
Prototype
uint32_t ramsize_in_bytes uart_get_mem_size( void) ;
Input parameter
None.
Return
Memory size in bytes.
Description
Get the memory size needed by one UART instance.