Kinetis SDK v.1.3 API Reference Manual  Rev. 0
Freescale Semiconductor, Inc.
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
fsl_lpsci_driver.h File Reference

This driver is for UART0 if UART0 is a separate chapter in the chip reference manual. More...

#include <stdint.h>
#include <stdbool.h>
#include "fsl_os_abstraction.h"
#include "fsl_clock_manager.h"
#include "fsl_lpsci_hal.h"

Data Structures

struct  lpsci_state_t
 Runtime state of the LPSCI driver. More...
 
struct  lpsci_user_config_t
 User configuration structure for the LPSCI driver. More...
 

Typedefs

typedef void(* lpsci_rx_callback_t )(uint32_t instance, void *lpsciState)
 LPSCI receive callback function type. More...
 
typedef void(* lpsci_tx_callback_t )(uint32_t instance, void *lpsciState)
 LPSCI transmit callback function type.
 

Functions

LPSCI Interrupt Driver
lpsci_status_t LPSCI_DRV_Init (uint32_t instance, lpsci_state_t *lpsciStatePtr, const lpsci_user_config_t *lpsciUserConfig)
 Initializes an LPSCI instance for operation. More...
 
lpsci_status_t LPSCI_DRV_Deinit (uint32_t instance)
 Shuts down the LPSCI by disabling interrupts and the transmitter/receiver. More...
 
lpsci_rx_callback_t LPSCI_DRV_InstallRxCallback (uint32_t instance, lpsci_rx_callback_t function, uint8_t *rxBuff, void *callbackParam, bool alwaysEnableRxIrq)
 Installs callback function for the LPSCI receive. More...
 
lpsci_tx_callback_t LPSCI_DRV_InstallTxCallback (uint32_t instance, lpsci_tx_callback_t function, uint8_t *txBuff, void *callbackParam)
 Installs callback function for the LPSCI transmit. More...
 
lpsci_status_t LPSCI_DRV_SendDataBlocking (uint32_t instance, const uint8_t *txBuff, uint32_t txSize, uint32_t timeout)
 Sends (transmits) data out through the LPSCI module using a blocking method. More...
 
lpsci_status_t LPSCI_DRV_SendData (uint32_t instance, const uint8_t *txBuff, uint32_t txSize)
 Sends (transmits) data through the LPSCI module using a non-blocking method. More...
 
lpsci_status_t LPSCI_DRV_GetTransmitStatus (uint32_t instance, uint32_t *bytesRemaining)
 Returns whether the previous LPSCI transmit has finished. More...
 
lpsci_status_t LPSCI_DRV_AbortSendingData (uint32_t instance)
 Terminates an asynchronous LPSCI transmission early. More...
 
lpsci_status_t LPSCI_DRV_ReceiveDataBlocking (uint32_t instance, uint8_t *rxBuff, uint32_t rxSize, uint32_t timeout)
 Gets (receives) data from the LPSCI module using a blocking method. More...
 
lpsci_status_t LPSCI_DRV_ReceiveData (uint32_t instance, uint8_t *rxBuff, uint32_t rxSize)
 Gets (receives) data from the LPSCI module using a non-blocking method. More...
 
lpsci_status_t LPSCI_DRV_GetReceiveStatus (uint32_t instance, uint32_t *bytesRemaining)
 Returns whether the previous LPSCI receive is complete. More...
 
lpsci_status_t LPSCI_DRV_AbortReceivingData (uint32_t instance)
 Terminates an asynchronous LPSCI receive early. More...
 

Variables

UART0_Type *const g_lpsciBase [UART0_INSTANCE_COUNT]
 Table of base addresses for LPSCI instances. More...
 
const IRQn_Type g_lpsciRxTxIrqId [UART0_INSTANCE_COUNT]
 Table to save LPSCI IRQ enumeration numbers defined in CMSIS header file.
 

Detailed Description

For a common UART, use the UART driver.