Академический Документы
Профессиональный Документы
Культура Документы
DA14580
JANUARY 29, 2015 V3.1
DA14580
Low Power Bluetooth Smart SoC
System diagram
2. Pinout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
3. System overview . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
3.1 ARM CORTEXM0 CPU . . . . . . . . . . . . . . . . . . 9
3.2 BLUETOOTH SMART . . . . . . . . . . . . . . . . . . . . 9
3.2.1 BLE Core . . . . . . . . . . . . . . . . . . . . . . . . . 9
3.2.2 Radio Transceiver . . . . . . . . . . . . . . . . . 10
3.2.3 SmartSnippets
3.3 MEMORIES . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
3.4 FUNCTIONAL MODES . . . . . . . . . . . . . . . . . . 11
3.5 POWER MODES. . . . . . . . . . . . . . . . . . . . . . . 12
3.6 INTERFACES . . . . . . . . . . . . . . . . . . . . . . . . . 12
3.6.1 UARTs . . . . . . . . . . . . . . . . . . . . . . . . . . 12
3.6.2 SPI+ . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
3.6.3 I2C interface . . . . . . . . . . . . . . . . . . . . . 12
3.6.4 General purpose ADC . . . . . . . . . . . . . . 13
3.6.5 Quadrature decoder. . . . . . . . . . . . . . . . 13
3.6.6 Keyboard controller . . . . . . . . . . . . . . . . 13
3.6.7 Input/output ports . . . . . . . . . . . . . . . . . . 13
3.7 TIMERS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
3.7.1 General purpose timers . . . . . . . . . . . . . 13
3.7.2 Wake-Up timer . . . . . . . . . . . . . . . . . . . . 14
3.7.3 Watchdog timer . . . . . . . . . . . . . . . . . . . 14
3.8 CLOCK/RESET . . . . . . . . . . . . . . . . . . . . . . . . 14
3.8.1 Clocks . . . . . . . . . . . . . . . . . . . . . . . . . . 14
3.8.2 Reset . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
3.9 POWER MANAGEMENT . . . . . . . . . . . . . . . . 15
4. Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
5. Specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
1. Block diagram
24 April 2012
DCDC
ARM Cortex M0 RC RC RCX
XTAL (BUCK/BOOST)
XTAL 16 MHz 32 kHz
32.768 kHz 16 MHz LDO LDO LDO
LDO
LDO
CORE SYS RET SYS
SYS
RF POReset
BLE Core
SWD (JTAG)
Radio
LINK LAYER
System/ AES-128 Transceiver
HARDWARE
Exchange
RAM
42 KB
3
Ret. RAM
Memory Controller
2 KB
APB bridge
Ret. RAM2
3 KB
Ret. RAM3
2 KB
Ret. RAM4 SW TIMER
Management (PMU)
KEYBOARD
DECODER
1 KB
POWER/CLOCK
WAKE UP
GP ADC
UART2
TIMER
QUAD
UART
CTRL
SPI
I2C
OTP DMA Timer 0
1xPWM
FIFO
FIFO
FIFO
32 KB OTPC
Final - January 29, 2015 v3.1
Timer 2
ROM 3xPWM GPIO MULTIPLEXING
84 KB
1 2 3 4 5 6
F
M
D
16
A
C_
P
O
O
VP
FI
AL
FI
G
D
R
R
C
XT
VD
p
M
16
_3
_1
_0
B
D
AL
N
P1
P0
P0
G
XT
LK
3
C
ND
_C
_
P1
P0
P0
SW
G
IO
_5
D
D
4
_1
D
_
N
D
P0
P0
P1
G
SW
F
1V
_R
0
E
_7
_6
T
_
AT
RS
AT
P1
P0
P0
VB
VB
Km
Kp
H
V
C
32
D
CD
32
3
IT
AT
AL
G
AL
SW
VD
XT
VB
XT
Figure 2 WLCSP34 ball assignment
VDCDC_RF
RFIOm
RFIOp
P3_7
P2_0
P2_9
P2_8
P2_7
P2_6
P2_5
VPP
NC
48
47
46
45
44
43
42
41
40
39
38
37
P0_0 1 36 P3_6
P0_1 2 35 XTAL16Mm
P0_2 3 34 XTAL16Mp
P0_3 4 33 P1_3
P3_0 5 32 P1_2
P0_5 7 30 SWDIO
(Top View)
P0_6 9 28 VBAT1V
P3_1 10 27 P1_0
P0_7 11 26 SWITCH
P3_2 12 25 P3_5
13
14
15
16
17
18
19
20
21
22
23
24
P3_4
XTAL32Kp
P3_3
P2_2
RST
XTAL32Km
GND
P2_3
VDCDC
P2_4
VBAT3V
P2_9
P2_8
P2_7
P2_6
P2_5
VPP
40
39
38
37
36
35
34
33
32
31
P0_0 1 30 XTAL16Mm
P0_1 2 29 XTAL16Mp
P0_2 3 28 P1_3
P0_3 4 27 P1_2
NC 5 DA14580 26 SW_CLK
P0_4 6 25 SWDIO
(Top View)
P0_5 7 24 P1_1
P2_1 8 23 VBAT1V
P0_6 9 22 P1_0
P0_7 10 21 SWITCH
11
12
13
14
15
16
17
18
19
20
VBAT_RF
VBAT3V
XTAL32Kp
P2_2
P2_3
XTAL32Km
VDCDC
P2_4
RST
GND
Pin 0: GND
plane
Reset
Drive
PIN NAME TYPE state DESCRIPTION
(mA)
(Note )
General Purpose I/Os
P0_0 DIO 4.8 I-PD INPUT/OUTPUT with selectable pull up/down resistor. Pull-down
P0_1 DIO I-PD enabled during and after reset. General purpose I/O port bit or
P0_2 DIO I-PD alternate function nodes. Contains state retention mechanism
P0_3 DIO I-PD during power down.
P0_4 DIO I-PD
P0_5 DIO I-PD
P0_6 DIO I-PD
P0_7 DIO I-PD
P1_0 DIO 4.8 I-PD INPUT/OUTPUT with selectable pull up/down resistor. Pull-down
P1_1 DIO I-PD enabled during and after reset. General purpose I/O port bit or
P1_2 DIO I-PD alternate function nodes. Contains state retention mechanism
P1_3 DIO I-PD during power down.
P1_4/SWCLK DIO I-PD This signal is the JTAG clock by default
P1_5/SW_DIO DIO I-PU This signal is the JTAG data I/O by default
P2_0 DIO 4.8 I-PD INPUT/OUTPUT with selectable pull up/down resistor. Pull-down
P2_1 DIO I-PD enabled during and after reset. General purpose I/O port bit or
P2_2 DIO I-PD alternate function nodes. Contains state retention mechanism
P2_3 DIO I-PD during power down.
P2_4 DIO I-PD NOTE: This port is only available on the QFN40/QFN48 pack-
P2_5 DIO I-PD ages.
P2_6 DIO I-PD
P2_7 DIO I-PD
P2_8 DIO I-PD
P2_9 DIO I-PD
P3_0 DIO 4.8 I-PD INPUT/OUTPUT with selectable pull up/down resistor. Pull-down
P3_1 DIO I-PD enabled during and after reset. General purpose I/O port bit or
P3_2 DIO I-PD alternate function nodes. Contain state retention mechanism dur-
P3_3 DIO I-PD ing power down.
P3_4 DIO I-PD NOTE: This port is only available on the QFN48 package.
P3_5 DIO I-PD
P3_6 DIO I-PD
P3_7 DIO I-PD
Debug interface
Reset
Drive
PIN NAME TYPE state DESCRIPTION
(mA)
(Note )
QD_CHA_Z DI INPUT. Channel A for the Z axis. Mapped on Px ports
QD_CHB_Z DI INPUT. Channel B for the Z axis. Mapped on Px ports
SPI bus interface
SPI_CLK DO INPUT/OUTPUT. SPI Clock. Mapped on Px ports
SPI_DI DI INPUT. SPI Data input. Mapped on Px ports
SPI_DO DO OUTPUT. SPI Data output. Mapped on Px ports
SPI_EN DI INPUT. SPI Clock enable (active LOW). Mapped on Px ports
I2C bus interface
SDA DIO/DIOD INPUT/OUTPUT. I2C bus Data with open drain port. Mapped on
Px ports
SCL DIO/DIOD INPUT/OUTPUT. I2C bus Clock with open drain port. In open
drain mode, SCL is monitored to support bit stretching by a
slave. Mapped on Px ports.
UART interface
UTX DO OUTPUT. UART transmit data. Mapped on Px ports
URX DI INPUT. UART receive data. Mapped on Px ports
URTS DO OUTPUT. UART Request to Send. Mapped on Px ports
UCTS DI INPUT. UART Clear to Send. Mapped on Px ports
UTX2 DO OUTPUT. UART 2 transmit data. Mapped on Px ports
URX2 DI INPUT. UART 2 receive data. Mapped on Px ports
URTS2 DO OUTPUT. UART 2 Request to Send. Mapped on Px ports
UCTS2 DI INPUT. UART 2 Clear to Send. Mapped on Px ports
Analog interface
ADC[0] AI INPUT. Analog to Digital Converter input 0. Mapped on P0[0]
ADC[1] AI INPUT. Analog to Digital Converter input 1. Mapped on P0[1]
ADC[2] AI INPUT. Analog to Digital Converter input 2. Mapped on P0[2]
ADC[3] AI INPUT. Analog to Digital Converter input 3. Mapped on P0[3]
Radio transceiver
RFIOp AIO RF input/output. Impedance 50
Reset
Drive
PIN NAME TYPE state DESCRIPTION
(mA)
(Note )
VBAT1V AI INPUT. Battery connection. Used for an alkaline or a NiMh bat-
tery (1.5 V). If a single coin battery (3 V) is attached to pin
VBAT3V,this pin must be connected to GND.
SWITCH AIO INPUT/OUTPUT. Connection for the external DC-DC converter
inductor.
VDCDC AO Output of the DC-DC converter
GND AIO - - Ground
3.2.3 SmartSnippets
The DA14580 comes complete with Dialog’s Smart-
Snippets Bluetooth Software platform which includes
a qualified Bluetooth Smart single-mode stack on chip.
Numerous Bluetooth Smart profiles for consumer well-
ness, sport, fitness, security and proximity applications
are supplied as standard, while additional customer
profiles can be developed and added as needed.
The SmartSnippets software development environ-
ment is based on Keil’s uVision mature tools and
contains example application code for both embedded
and hosted modes.
Sample
Drivers
Accelerometer SPI FLASH Battery
Driver Driver Driver CORE
Drivers
EEPROM
I2C
Driver
Core drivers are provided for each interface of the 3.4 FUNCTIONAL MODES
DA14580 enabling optimized usage of the hardware’s The DA14580 is optimized for deeply embedded appli-
capabilities. These drivers provide an easy-to-use cations such as health monitoring, sports measuring,
interface towards the hardware engines without having human interaction devices etc. Customers are able to
to interfere with the register programming directly. develop and test their own applications. Upon comple-
On top of the core drivers, a number of sample drivers tion of the development, the application code can be
is also provided enabling communication with basic programmed into the OTP. In general, the system has
Bluetooth Smart application components: accelerome- three functional modes of operation:
ters, FLASH/EEPROM non-volatile memories, etc. A. Development mode: During this phase application
code is developed using the ARM Cortex-M0 SW envi-
3.3 MEMORIES ronment. The compiled code is then downloaded into
The following memories are part of the DA14580’s the System RAM or any Retention RAMs by means of
internal blocks: SWD (JTAG) or any serial interface (e.g. UART).
Address 0x00 is remapped to the physical memory that
ROM. This is a 84 kB ROM containing the Bluetooth
contains the code and the CPU is configured to reset
Smart protocol stack as well as the boot code and execute code from the remapped device. This
sequence. mode is enabling application development, debugging
OTP. This is a 32 kB One-Time Programmable mem- and on-the-fly testing.
ory array, used to store the application code as well as B. Normal mode: After the application is ready and
• Extended Sleep mode: All power domains are off SPI is a trademark of Motorola, Inc.
except for the PD_AON, the programmed PD_RRx Features
and the PD_SR. Since the SysRAM retains its data,
• Slave and Master mode
no OTP mirroring is required upon waking up the
system. • 8 bit, 9 bit, 16 bit or 32 bit operation
• Deep Sleep mode: All power domains are off except • Clock speeds upto 16 MHz for the SPI controller.
for the PD_AON and the programmed PD_RRx. Programmable output frequencies of SPI source
This mode dissipates the minimum leakage power. clock divided by 1, 2, 4, 8
However, since the SysRAM has not retained its
• SPI clock line speed up to 8 MHz
data, an OTP mirror action is required upon waking
up the system. • SPI mode 0, 1, 2, 3 support (clock edge and phase)
• Programmable SPI_DO idle level
3.6 INTERFACES
• Maskable Interrupt generation
3.6.1 UARTs
• Bus load reduction by unidirectional writes-only and
The UART is compliant to the industry-standard 16550 reads-only modes.
and is used for serial communication with a peripheral, Built-in RX/TX FIFOs for continuous SPI bursts.
modem (data carrier equipment, DCE) or data set.
Data is written from a master (CPU) over the APB bus 3.6.3 I2C interface
to the UART and it is converted to serial form and
transmitted to the destination device. Serial data is also The I2C interface is a programmable control bus that
received by the UART and stored for the master (CPU) provides support for the communications link between
to read back. Integrated Circuits in a system. It is a simple two-wire
There is no DMA support on the UART block since its bus with a software-defined protocol for system control,
contains internal FIFOs. Both UARTs support hard- which is used in temperature sensors and voltage level
ware flow control signals (RTS, CTS, DTR, DSR). translators to EEPROMs, general-purpose I/O, A/D
and D/A converters.
Features
Features
• 16 bytes Transmit and receive FIFOs
• IrDA 1.0 SIR mode supporting low power mode. • Clock synchronization
• Programmable character properties, such as num- • Master transmit, Master receive operation
ber of data bits per character (5-8), optional • 7 or 10-bit addressing
• parity bit (with odd or even select) and number of • 7 or 10-bit combined format transfers
stop bits (1, 1.5 or 2)
• Bulk transmit mode
• Line break generation and detection
• Default slave address of 0x055
• Prioritized interrupt identification
• Interrupt or polled-mode operation
• Programmable serial data baud rate as calculated
XTAL16Mm
XTAL32Km
XTAL16Mp
XTAL32Kp
The Wake-up timer can be programmed to wake up the
DA14580 from power down mode after a prepro-
grammed number of GPIO events.
Features
• Monitors any GPIO state change
0-22.4 pF
• Implements debouncing time from 0 upto 63 ms
• Accumulates external events and compares the
number to a programmed value clock16MHz
clock32kHz
• Generates an interrupt to the CPU
VDCDC_RF
VBAT_RF
2.35 V to 3.3 V
SWITCH
VBAT3V
VDCDC
Lithium
coin-cell
LDO LDO
LDO
analog/RF
digital analog/RF
Buck Converter
DA14580
Boost Converter
VDCDC_RF
LDO LDO LDO
VBAT_RF
digital analog/RF
retention
DA14580
The usage of Boost or Buck mode with respect to the dashed lines. The first one (0 V to 0.9 V) indicates that
provided voltage ranges is illustrated in the following the DA14580 is not operational when the voltage is
figure which also illustrates the efficiency of the engine below 0.9 V. This is the absolute threshold for the DC-
assuming a 10 mA constant load. DC converter Boost mode.
The second area (1.8 V to 2.2 V) indicates that Deep
Sleep mode is not allowed when the DC-DC converter
is configured in BUCK mode and the voltage is within
DC‐DC Efficiency vs Voltage this range, because the OTP will not be readable any
95% more. However, this part of the voltage range can be
90% covered by the BOOST mode. Furthermore, when
85% BUCK mode is mandatory, Extended Sleep mode can
80%
75%
be activated instead of Deep Sleep mode, thus not
using the OTP for the code mirroring but retain the
Note 1: The period duration of 250 us is derived by dividing the RC16M clock signal by 4000. Consequently, the period duration may vary over tem-
perature.
Note 3: For buck mode the output must be powered by the 3V rail, for boost mode by the 1V rail.
Note 5: For buck mode the output must be powered by the 3V rail, for boost mode by the 1V rail.
Note 6: For buck mode the output must be powered by the 3V rail, for boost mode by the 1V rail.
9%$79
9%$7 73 9%$7 %7
*1' 73 / 9$$$
9%$7 X+
933 73 9GFGF
6:&/. 73
&
6:',2 73 & &
X) X) X) 9GFGF
'
&
$
$
(
(
)
6:',2
6:B&/.
933
9'&'&B5)
9%$79
9%$7B5)
6:,7&+
& 9%$7
% ) X)
3B 9'&'& $17
% )
3B 9%$79
&
3B
&
& X)
3B
' $
3B 5),2S
' $
3B 5),2P
(
(
3B
3B
8
'$ <
0+]
( %
3B ;7$/0S
' $
3B ;7$/0P
&
3B
%
3B )
;7$/.S <
( ) N+]
567 ;7$/.P
*1'
*1'
*1'
*1'
*1'
*1'
)
'
$
'
&
%
6:&/. 73
& & X+
6:',2 73
X) X)
'
&
$
$
(
(
)
& $17
6:',2
6:B&/.
933
9'&'&B5)
9%$79
9%$7B5)
6:,7&+
X)
9%$7
% )
3B 9'&'&
% )
3B 9%$79
& %7
3B
& 9&RLQ
& X)
3B
' $
3B 5),2S
' $
3B 5),2P
(
(
3B
3B
8
'$ <
0+]
( %
3B ;7$/0S
' $
3B ;7$/0P
&
3B
%
3B )
;7$/.S <
( ) N +]
567 ;7$/.P
237,21$/
*1'
*1'
*1'
*1'
*1'
*1'
)
'
$
'
&
%
Note 8: Cold boot should not be performed if voltage is less than 2.5 V because of possible corruption during OTP data mirroring. Trim values pro-
grammed in the OTP as well as the application image, should be copied into RAM while VBAT3V >= 2.5 V.
Note 13: Select a crystal that can handle a drive-level of at least this specification.
Note 15: A low value will result in lowest power consumption, keep this value at 1 uF or 2 uF.
Note 16: When VBAT1V > VDCDC_nominal, VDCDC will follow VBAT1V.
Note 17: The DCDC-converter efficiency is assumed to be 100 % to enable benchmarking of the radio currents at battery supply domain (VBAT3V =
3 V).
Note 18: Measured according to Bluetooth® Low Energy Test Specification RF-PHY.TS/4.0.1, section 6.4.1.
Note 19: Measured according to Bluetooth® Low Energy Test Specification RF-PHY.TS/4.0.1, section 6.4.2.
Note 20: Measured according to Bluetooth® Core Technical Specification document, version 4.0, volume 6, section 4.4. Published value is for n =
IXIT = 4 . IXIT = 5 gives the same results, IXIT = 3 gives results that are 5 dB lower.
Note 21: Measured according to Bluetooth® Core Technical Specification document, version 4.0, volume 6, section 4.2.
Note 22: Measured according to Bluetooth® Core Technical Specification document, version 4.0, volume 6, section 4.3. Due to limitations of the
measurement equipment, levels of -5 dBm should be interpreted as > -5 dBm.
Note 23: PRF = PRSSI(min) + LRES(RSSI) x RXRSSI[7:0] ± LACC(RSSI). Thanks to constant gain biasing of RF part in the receiver, the RSSI can
be used to estimate absolute power levels, rather than mere level changes. Even across the full temperature range the variation is limited.
Note 24: Measured according to Bluetooth® Low Energy Test Specification RF-PHY.TS/4.0.1, section 6.2.3.
Note 25: To activate the "Near Field Mode", program address 0x50002418 with the value 0x0030.
Note 26: Maximum recommended connection interval (including slave latency) for the RCX usage is 2 s.
Disclaimer
Information in this document is believed to be accurate and reliable. However, Dialog Semiconductor does not give
any representations or warranties, expressed or implied, as to the accuracy or completeness of such information.
Dialog Semiconductor furthermore takes no responsibility whatsoever for the content in this document if provided by
any information source outside of Dialog Semiconductor.
Dialog Semiconductor reserves the right to change without notice the information published in this document, includ-
ing without limitation the specification and the design of the related semiconductor products, software and applica-
tions.
Applications, software, and semiconductor products described in this document are for illustrative purposes only.
Dialog Semiconductor makes no representation or warranty that such applications, software and semiconductor
products will be suitable for the specified use without further testing or modification. Unless otherwise agreed in writ-
ing, such testing or modification is the sole responsibility of the customer and Dialog Semiconductor excludes all lia-
bility in this respect.
Customer notes that nothing in this document may be construed as a license for customer to use the Dialog Semi-
conductor products, software and applications referred to in this document. Such license must be separately sought
by customer with Dialog Semiconductor.
All use of Dialog Semiconductor products, software and applications referred to in this document are subject to
Dialog Semiconductor's Standard Terms and Conditions of Sale, unless otherwise stated.
© Dialog Semiconductor. All rights reserved.