Document Number: 001-90478 Rev. *K Page 6 of 42
Peripheral Blocks
12-Bit SAR ADC
The ADC is a 12-bit, 1-Msps SAR ADC with a built-in
sample-and-hold (S/H) circuit. The ADC can operate with either
an internal voltage reference or an external voltage reference.
Preceding the SAR ADC is the SARMUX, which can route
external pins and internal signals (analog mux bus and temper-
ature sensor output) to the eight internal channels of the SAR
ADC. The sequencer controller (SARSEQ) is used to control the
SARMUX and SAR ADC to do an automatic scan on all enabled
channels without CPU intervention and for preprocessing tasks
such as averaging the output data. A Cypress-supplied software
driver (Component) is used to control the ADC peripheral.
Figure 3. SAR ADC System Diagram
A diode based, on-chip temperature sensor is used to measure
the die temperature. The temperature sensor is connected to the
ADC, which digitizes the reading and produces a temperature
value using the Cypress-supplied software that includes
calibration and linearization.
4x Timer Counter PWM (TCPWM)
The 16-bit TCPWM module can be used to generate the PWM
output or to capture the timing of edges of input signals or to
provide a timer functionality. TCPWM can also be used as a
16-bit counter that supports up, down, and up/down counting
modes.
Rising edge, falling edge, combined rising/falling edge detection,
or pass-through on all hardware input signals can be used to
derive counter events. Three routed output signals are available
to indicate underflow, overflow, and counter/compare match
events. A maximum of four TCPWMs are available.
4x PWM
These PWMs are in addition to the TCPWMs. The PWM
peripheral can be configured as 8-bit or 16-bit resolution. The
PWM provides compare outputs to generate single or continuous
timing and control signals in hardware. It also provides an easy
method of generating complex real-time events accurately with
minimal CPU intervention. A maximum of four 8-bit PWMs or two
16-bit PWMs are available.
Serial Communication Block (SCB0/SCB1)
The SCB can be configured as an I2C, UART, or SPI interface. It
supports an 8-byte FIFO for receive and transmit buffers to
reduce CPU intervention. A maximum of two SCBs (SCB0,
SCB1) are available.
I2C mode: The I2C peripheral is compatible with the I2C
Standard-mode, Fast-mode, and Fast-Mode-Plus devices as
defined in the NXP I2C-bus specification and user manual
(UM10204). The I2C bus I/O is implemented with GPIOs in
open-drain modes.
The hardware I2C block implements a full multimaster and slave
interface (it is capable of multimaster arbitration). This block is
capable of operating at speeds of up to 1 Mbps (Fast-Mode Plus)
and has flexible buffering options to reduce the interrupt
overhead and latency for the CPU. The I2C function is imple-
mented using the Cypress-provided software Component
(EzI2C) that creates a mailbox address range in the memory of
PRoC BLE and effectively reduces the I2C communication to
reading from and writing to an array in memory. In addition, the
block supports an 8-byte FIFO for receive and transmit, which,
by increasing the time given for the CPU to read data, greatly
reduces the need for clock stretching caused by the CPU not
having read the data on time.
When SCB0 is used, Serial Data (SDA) and Serial Clock (SCL)
of I2C can be connected to P0.4 and P0.5, or P1.4 and P1.5, or
P3.0 and P3.1.
When SCB1 is used, SDA and SCL can be connected to P0.0
and P0.1, or P3.4 and P3.5, or P5.0 and P5.1.
Configurations for I2C are as follows:
■SCB1 is fully compliant with the Standard-mode (100 kHz),
Fast-mode (400 kHz), and Fast-Mode-Plus (1 MHz) I2C
signaling specifications when routed to GPIO pins P5.0 and
P5.1, except for hot-swap capability during I2C active commu-
nication.
■SCB1 is compliant only with Standard mode (100 kHz) when
not used with P5.0 and P5.1.
■SCB0 is compliant with Standard mode (100 kHz) only.
UART mode: This is a full-feature UART operating up to 1 Mbps.
It supports automotive single-wire interface (LIN), infrared
interface (IrDA), and SmartCard (ISO7816) protocols. In
addition, it supports the 9-bit multiprocessor mode, which allows
addressing of peripherals connected over common RX and TX
lines. The UART hardware flow control is supported to allow slow
and fast devices to communicate with each other over UART
without the risk of losing data. Refer to Ta b l e 4 on page 11 for
possible UART connections to the GPIOs.
SPI Mode: The SPI mode supports full Motorola® SPI, Texas
Instruments® Secure Simple Pairing (SSP) (essentially adds a
start pulse used to synchronize SPI Codecs), and National
Microwire (half-duplex form of SPI). This block supports an
8-byte FIFO for receive and transmit. Refer to Table 4 on page
11 for the possible SPI connections to the GPIOs.
Inter-IC Sound Bus (I2S)
Inter-IC Sound Bus (I2S) is a serial bus interface standard used
for connecting digital audio devices. The specification is from
Philips® Semiconductor (I2S bus specification; February 1986,
revised June 5, 1996).