# Interfaces

The RSL15 system has a number of interfaces to support communicating with external devices. These interfaces and pads are described briefly in the sections below, and in detail in Overview, Communication Interfaces, and Sensor Interfaces.

## General Purpose Input/Output (GPIO)

RSL15 contains up to 16 highly flexible general purpose input/output (GPIO) pins that can be configured as digital input or output, communication interfaces, clocks, wakeup sources, or analog functions. Communication interfaces can be routed to any GPIO. Other functions are available on select GPIOs (see section Pin Definition and Multiplexing). Each GPIO has a software configurable pull up/down resistor, LPF for I2C, and four drive strengths options.

For HAL firmware information related to GPIO, see the RSL15 Firmware Reference: General-Purpose I/O Interface.

## Communications Interfaces

### I2C

The I2C controller consists of two independent channels of the two-wire interface, including a bidirectional clock line (SCL) and bidirectional data line (SDA). The I2C interface supports both master and slave mode operation. Both 100 kHz, 400 kHz, and 1 MHz modes are supported.

For HAL firmware information related to the I2C interface, see the RSL15 Firmware Reference: I2C.

### LIN

The Local Interconnect Network (LIN) controller is designed to be paired with a LIN transceiver, such as the onsemi NCV7420, to provide a LIN connection that is compliant to specification revision 2.2 (backward compatible to version 1.3). The LIN controller supports one asynchronous 2-wire interface including both receive and transmit communications.

For HAL firmware information related to the LIN interface, see the RSL15 Firmware Reference: LIN.

### PCM

The highly configurable PCM (Pulse Code Modulation) interface can be used to stream data into and out of RSL15.

### PWM

The RSL15 SoC contains two pulse width modulation (PWM) interfaces:

- The primary PWM controller can output on five independent channels with configurable period, duty cycle, and offset. The PWM has 12-bit resolution with an optional 8-bit dithering per channel for lighting applications.
- The analog control system's PWM controller operates on one channel, has configurable period and duty cycle, and can be kept enabled in any power mode.

For HAL firmware information related to the PWM interface, see the RSL15 Firmware Reference: Pulse-Width Modulation.

### SPI

The SPI controller consists of two independent channels, with the standard 4-wire interface of SCLK, MOSI, MISO and CS supporting master and slave mode. Each channel also supports dual (DSPI) and quad (QSPI) modes in half or full duplex mode.

For HAL firmware information related to the SPI interface, see the RSL15 Firmware Reference: SPI.

### UART

The general-purpose universal asynchronous receiver-transmitter (UART) uses a standard data format with one start bit, eight data bits, and one stop bit.

For HAL firmware information related to the UART interface, see the RSL15 Firmware Reference: UART.

## Sensor Support Interfaces

### Analog Comparator

RSL15 contains a low-power comparator that can be active in Standby, Sleep, and Smart Sense Modes. It has three different settings to trade off response time with power consumption: Low Power, Normal, and High Speed. See Analog Comparator.

### SAR ADC

The successive approximation (SAR) ADC generates 12−bit samples up to 2 Msps sample frequency. This ADC is auto calibrated during operation for optimal INL/DNL performance.

### Pulse Counter

A pulse counter can be driven by one of GPIO[3:0]. It counts pulses from the selected GPIO during a set interval.

### Low Speed ADC

The low speed ADC (LSAD) is a combined integrating and algorithmic ADC that has a resolution varying from 8 to 14 bits depending on configuration. While converting, the input signal can be integrated across one or more clock cycles (depending on configuration). The low speed ADC sampling rate can be up to 50 ksps. In addition, the ADC can be configured to measure single ended or differential input voltages, and supports monitoring the VBAT input voltage.

### Simple DAC

RSL15 contains a simple low-power DAC that can be used for sensor biasing purposes. To optimize power consumption, there is also a buffer that can be disabled if the load is high impedance.

### Current Source

A built-in current source features adjustable output from 1 µA to 16 µA. The current source may be applied for temperature measurements using an external thermistor connected to a GPIO.

### ULP Data Acquisition Subsystem

The ULP data acquisition subsystem comprises a small FIFO, accumulator, and threshold comparator that can be used in combination with the high-speed ADC, and a pulse counter to perform data acquisition and rudimentary data processing and decision making. This is available in all power modes, as shown in the "ULP Data Acquisition Subsystem" figure.

Figure: ULP Data Acquisition Subsystem