Figure 49. 20-pin, 4.40 mm body, 0.65 mm pitch .................................................................................101
Figure 50. 20-lead, plastic small outline (300 mils) package ...............................................................101
Figure 51. Recommended footprint for on-board emulation ................................................................102
Figure 52. Recommended footprint without on-board emulation .........................................................103
Figure 53. STM8S103x access line ordering information scheme ......................................................106
7/117DocID15441 Rev 9
STM8S103K3 STM8S103F3 STM8S103F2Introduction
Introduction1
This datasheet contains the description of the device features, pinout, electrical characteristics,
mechanical data and ordering information.
For complete information on the STM8S microcontroller memory, registers and peripherals,
•
please refer to the STM8S microcontroller family reference manual (RM0016).
For information on programming, erasing and protection of the internal Flash memory
•
please refer to the STM8S Flash programming manual (PM0051).
For information on the debug and SWIM (single wire interface module) refer to the STM8
•
SWIM communication protocol and debug module user manual (UM0470).
For information on the STM8 core, please refer to the STM8 CPU programming manual
•
(PM0044).
DocID15441 Rev 98/117
DescriptionSTM8S103K3 STM8S103F3 STM8S103F2
Description2
The STM8S103x access line 8-bit microcontrollers offer 8 Kbytes Flash program memory,
plus integrated true data EEPROM. The STM8S microcontroller family reference manual
(RM0016) refers to devices in this family as low-density. They provide the following benefits:
performance, robustness, and reduced system cost.
Device performance and robustness are ensured by advanced core and peripherals made
in a state-of-the art technology, a 16 MHz clock frequency, robust I/Os, independent watchdogs
with separate clock source, and a clock security system.
The system cost is reduced thanks to an integrated true data EEPROM for up to 300
kwrite/erase cycles and a high system integration level with internal clock oscillators, watchdog
and brown-out reset.
Full documentation is offered as well as a wide choice of development tools.
The following section intends to give an overview of the basic features of the device functional
modules and peripherals.
For more detailed information please refer to the corresponding family reference manual
(RM0016).
Central processing unit STM84.1
The 8-bit STM8 core is designed for code efficiency and performance.
It contains 6 internal registers which are directly addressable in each execution context, 20
addressing modes including indexed indirect and relative addressing and 80 instructions.
Architecture and registers
Harvard architecture
•
3-stage pipeline
•
32-bit wide program memory bus - single cycle fetching for most instructions
•
X and Y 16-bit index registers - enabling indexed addressing modes with or without offset
•
and read-modify-write type data manipulations
8-bit accumulator
•
24-bit program counter - 16-Mbyte linear memory space
•
16-bit stack pointer - access to a 64 K-level stack
•
8-bit condition code register - 7 condition flags for the result of the last instruction
•
Addressing
20 addressing modes
•
Indexed indirect addressing mode for look-up tables located anywhere in the address
•
space
Stack pointer relative addressing mode for local variables and parameter passing
•
Instruction set
80 instructions with 2-byte average instruction size
•
Standard data movement and logic/arithmetic functions
•
8-bit by 8-bit multiplication
•
16-bit by 8-bit and 16-bit by 16-bit division
•
Bit manipulation
•
Data transfer between stack and accumulator (push/pop) with direct stack access
•
Data transfer using the X and Y registers or direct memory-to-memory transfers
•
Single wire interface module (SWIM) and debug module (DM)4.2
The single wire interface module and debug module permits non-intrusive, real-time in-circuit
debugging and fast memory programming.
11/117DocID15441 Rev 9
STM8S103K3 STM8S103F3 STM8S103F2Product overview
SWIM
Single wire interface module for direct access to the debug module and memory programming.
The interface can be activated in all device operation modes. The maximum data transmission
speed is 145 bytes/ms.
Debug module
The non-intrusive debugging module features a performance close to a full-featured emulator.
Beside memory and peripherals, also CPU operation can be monitored in real-time by means
of shadow registers.
R/W to RAM and peripheral registers in real-time
•
R/W access to all resources by stalling the CPU
•
Breakpoints on all program-memory instructions (software breakpoints)
•
Two advanced breakpoints, 23 predefined configurations
•
Interrupt controller4.3
Nested interrupts with three software priority levels
•
32 interrupt vectors with hardware priority
•
Up to 27 external interrupts on 6 vectors including TLI
•
Trap and reset interrupts
•
Flash program and data EEPROM memory4.4
8 Kbytes of Flash program single voltage Flash memory
•
640 bytes true data EEPROM
•
User option byte area
•
Write protection (WP)
Write protection of Flash program memory and data EEPROM is provided to avoid unintentional
overwriting of memory that could result from a user software malfunction.
There are two levels of write protection. The first level is known as MASS (memory access
security system). MASS is always enabled and protects the main Flash program memory,
data EEPROM and option bytes.
To perform in-application programming (IAP), this write protection can be removed by writing
a MASS key sequence in a control register. This allows the application to write to data
EEPROM, modify the contents of main program memory or the device option bytes.
A second level of write protection, can be enabled to further protect a specific area of memory
known as UBC (user boot code). Refer to the figure below.
The size of the UBC is programmable through the UBC option byte, in increments of 1 page
(64-byte block) by programming the UBC option byte in ICP mode.
This divides the program memory into two areas:
Main program memory: Up to 8 Kbytes minus UBC
•
User-specific boot code (UBC): Configurable up to 8 Kbytes
•
The UBC area remains write-protected during in-application programming. This means that
the MASS keys do not unlock the UBC area. It protects the memory used to store the boot
DocID15441 Rev 912/117
UBC area
Program memory area
Data memory area ( 640 bytes)
Remains write protected during IAP
Data
EEPROM
memory
Write access possible for IAP
Option bytes
Programmable
bytes(1 page)
up to 8 Kbytes
(in 1 page steps)
area from 64
Low density
Flash program
memory
(8 Kbytes)
Product overviewSTM8S103K3 STM8S103F3 STM8S103F2
program, specific code libraries, reset and interrupt vectors, the reset routine and usually the
IAP and communication routines.
Figure 2: Flash memory organization
Read-out protection (ROP)
The read-out protection blocks reading and writing the Flash program memory and data
EEPROM memory in ICP mode (and debug mode). Once the read-out protection is activated,
any attempt to toggle its status triggers a global erase of the program and data memory. Even
if no protection can be considered as totally unbreakable, the feature provides a very high
level of protection for a general purpose microcontroller.
Clock controller4.5
The clock controller distributes the system clock (f
to the core and the peripherals. It also manages clock gating for low power modes and ensures
clock robustness.
Features
Clock prescaler: To get the best compromise between speed and current consumption
•
the clock frequency to the CPU and peripherals can be adjusted by a programmable
prescaler.
Safe clock switching: Clock sources can be changed safely on the fly in run mode
•
through a configuration register. The clock signal is not switched until the new clock source
is ready. The design guarantees glitch-free switching.
Clock management: To reduce power consumption, the clock controller can stop the
•
clock to the core, individual peripherals or memory.
Master clock sources: Four different clock sources can be used to drive the master
•
clock:
-
1-16 MHz high-speed external crystal (HSE)
MASTER
) coming from different oscillators
13/117DocID15441 Rev 9
Bit
STM8S103K3 STM8S103F3 STM8S103F2Product overview
Up to 16 MHz high-speed user-external clock (HSE user-ext)
-
16 MHz high-speed internal RC oscillator (HSI)
-
128 kHz low-speed internal RC (LSI)
-
Startup clock: After reset, the microcontroller restarts by default with an internal 2 MHz
•
clock (HSI/8). The prescaler ratio and clock source can be changed by the application
program as soon as the code execution starts.
Clock security system (CSS): This feature can be enabled by software. If an HSE clock
•
failure occurs, the internal RC (16 MHz/8) is automatically selected by the CSS and an
interrupt can optionally be generated.
Configurable main clock output (CCO): This outputs an external clock for use by the
•
application.
Table 2: Peripheral clock gating bit assignments in CLK_PCKENR1/2 registers
For efficent power management, the application can be put in one of four different low-power
modes. You can configure each mode to obtain the best compromise between lowest power
consumption, fastest start-up time and available wakeup sources.
Wait mode: In this mode, the CPU is stopped, but peripherals are kept running. The
•
wakeup is performed by an internal or external interrupt or reset.
Active halt mode with regulator on: In this mode, the CPU and peripheral clocks are
•
stopped. An internal wakeup is generated at programmable intervals by the auto wake up
unit (AWU). The main voltage regulator is kept powered on, so current consumption is
higher than in active halt mode with regulator off, but the wakeup time is faster. Wakeup
is triggered by the internal AWU interrupt, external interrupt or reset.
Active halt mode with regulator off: This mode is the same as active halt with regulator
•
on, except that the main voltage regulator is powered off, so the wake up time is slower.
Halt mode: In this mode the microcontroller uses the least power. The CPU and peripheral
•
clocks are stopped, the main voltage regulator is powered off. Wakeup is triggered by
external event or reset.
Watchdog timers4.7
The watchdog system is based on two independent timers providing maximum security to
the applications.
DocID15441 Rev 914/117
Product overviewSTM8S103K3 STM8S103F3 STM8S103F2
Activation of the watchdog timers is controlled by option bytes or by software. Once activated,
the watchdogs cannot be disabled by the user program without performing a reset.
Window watchdog timer
The window watchdog is used to detect the occurrence of a software fault, usually generated
by external interferences or by unexpected logical conditions, which cause the application
program to abandon its normal sequence.
The window function can be used to trim the watchdog behavior to match the application
perfectly.
The application software must refresh the counter before time-out and during a limited time
window.
A reset is generated in two situations:
1. Timeout: At 16 MHz CPU clock the time-out period can be adjusted between 75 µs up to
64 ms.
2. Refresh out of window: The downcounter is refreshed before its value is lower than the
one stored in the window register.
Independent watchdog timer
The independent watchdog peripheral can be used to resolve processor malfunctions due to
hardware or software failures.
It is clocked by the 128 kHZ LSI internal RC clock source, and thus stays active even in case
of a CPU clock failure
The IWDG time base spans from 60 µs to 1 s.
Auto wakeup counter4.8
Used for auto wakeup from active halt mode
•
Clock source: Internal 128 kHz internal low frequency RC oscillator or external clock
•
LSI clock can be internally connected to TIM1 input capture channel 1 for calibration
•
Beeper4.9
The beeper function outputs a signal on the BEEP pin for sound generation. The signal is in
the range of 1, 2 or 4 kHz.
The beeper output port is only available through the alternate function remap option bit AFR7.
TIM1 - 16-bit advanced control timer4.10
This is a high-end timer designed for a wide range of control applications. With its
complementary outputs, dead-time control and center-aligned PWM capability, the field of
applications is extended to motor control, lighting and half-bridge driver
16-bit up, down and up/down autoreload counter with 16-bit prescaler
•
Four independent capture/compare channels (CAPCOM) configurable as input capture,
•
output compare, PWM generation (edge and center aligned mode) and single pulse mode
output
Synchronization module to control the timer with external signals
•
15/117DocID15441 Rev 9
STM8S103K3 STM8S103F3 STM8S103F2Product overview
Break input to force the timer outputs into a defined state
•
Three complementary outputs with adjustable dead time
•
Encoder mode
•
Interrupt sources: 3 x input capture/output compare, 1 x overflow/update, 1 x break
•
TIM2 - 16-bit general purpose timer4.11
16-bit autoreload (AR) up-counter
•
15-bit prescaler adjustable to fixed power of 2 ratios 1…32768
Interrupt sources: 3 x input capture/output compare, 1 x overflow/update
•
TIM4 - 8-bit basic timer4.12
8-bit autoreload, adjustable prescaler ratio to any power of 2 from 1 to 128
•
Clock source: CPU clock
•
Interrupt source: 1 x overflow/update
•
Timer
Table 3: TIM timer features
Counter
size (bits)
16TIM1
16TIM2
8TIM4
Prescaler
Any integer
from 1 to
65536
Any power of
2 from 1 to
32768
Any power of
2 from 1 to
128
Counting
mode
CAPCOM
channels
Complem.
outputs
Ext.
trigger
Yes34Up/down
No03Up
No00Up
Timer
synchronization/
chaining
No
Analog-to-digital converter (ADC1)4.13
The STM8S103xx family products contain a 10-bit successive approximation A/D converter
(ADC1) with up to 5 external multiplexed input channels and the following main features:
Input voltage range: 0 to V
•
Conversion time: 14 clock cycles
•
Single and continuous and buffered continuous conversion modes
•
Buffer size (n x 10 bits) where n = number of input channels
•
Scan mode for single and continuous conversion of a sequence of channels
•
DD
DocID15441 Rev 916/117
Product overviewSTM8S103K3 STM8S103F3 STM8S103F2
Analog watchdog capability with programmable upper and lower thresholds
•
Analog watchdog interrupt
•
External trigger input
•
Trigger from TIM1 TRGO
•
End of conversion (EOC) interrupt
•
Communication interfaces4.14
The following communication interfaces are implemented:
STM8S103K3 STM8S103F3 STM8S103F2Pinout and pin description
5.1
STM8S103Kx UFQFPN32/LQFP32/SDIP32 pinout and pin
description
Figure 3: STM8S103Kx UFQFPN32/LQFP32 pinout
1. (HS) high sink capability.
2. (T) True open drain (P-buffer and protection diode to VDDnot implemented).
3. [ ] alternate function remapping option (if the same alternate function is shown twice, it
indicates an exclusive choice not a duplication of the function).
DocID15441 Rev 920/117
8
1
2
3
4
5
6
7
9
10
11
12
13
14
15
16
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
[TIM2_CH2] ADC_ETR/(HS) PD3
BEEP/TIM2_CH1/(HS) PD4
UART1_TX(/HS)PD5
UART1_RX/(HS)PD6
[TIM1_CH4] TLI/(HS) PD7
OSCIN/PA1
OSCOUT/PA2
VSS
VCAP
VDD
[SPI_NSS] TIM2_CH3/(HS) PA3
PB6
PB3 (HS)/TIM1_ETR/AIN3
PB2 (HS)/TIM1_CH3N/AIN2
PB1 (HS)/TIM1_CH2N/AIN1
PB0 (HS)/TIM1_CH1N/AIN0
PE5/SPI_NSS
PC1 (HS)/TIM1_CH1/UART1_CK
PC2( HS)/TIM1_CH2
PC3 (HS)/TIM1_CH3
PC4( HS)/TIM1_CH4/CLK_CCO
PC5 (HS)/SPI_SCK
PC6 (HS)/SPI_MOSI
PC7 (HS)/SPI_MISO
PD0 (HS)/TIM1_BKIN [CLK_CCO]
PD1 (HS)/SWIM
PD2 (HS) [TIM2_CH3]
PB7
I2C_SDA/(T) PB5
NRST
PF4
PB4 (T)/I2C_SCL
Pinout and pin descriptionSTM8S103K3 STM8S103F3 STM8S103F2
Figure 4: STM8S103Kx SDIP32 pinout
1. (HS) high sink capability.
2. (T) True open drain (P-buffer and protection diode to VDDnot implemented).
3. [ ] alternate function remapping option (if the same alternate function is shown twice, it
indicates an exclusive choice not a duplication of the function).
LQFP/
SDIP
UFQFP
32
32
27
38
49
611
712
Pin
name
OSCIN
OSCOUT
SS
DD
TIM2_CH3
[SPI_NSS]
Table 5: UFQFPN32/LQFP32/SDIP32 pin description
(2)
Type
wpufloating
Ext.
interrupt
OutputInput
High
sink
(1)
PPODSpeed
Main
function
(after
reset)
ResetXI/ONRST16
Digital groundSV
1.8 V regulator capacitorSVCAP510
Digital power supplySV
Default alternate
function
Resonator/ crystal inPort A1XXO1XXXI/OPA1/
Resonator/ crystal outPort A2XXO1XXXI/OPA2/
Timer 2 channel 3Port A3XXO3HSXXXI/OPA3/
Alternate
function after
remap [option
bit]
SPI master/
slave select
[AFR1]
21/117DocID15441 Rev 9
STM8S103K3 STM8S103F3 STM8S103F2Pinout and pin description
SDIP
32
LQFP/
UFQFP
32
1116
1217
1318
1419
1520
Pin
name
I2C_SDA
I2C_SCL
TIM1_ETR
TIM1_CH3N
TIM1_CH2N
Type
wpufloating
Ext.
interrupt
OutputInput
High
sink
(1)
Main
function
(after
PPODSpeed
reset)
Port F4XXO1XXI/OPF4813
Port B7XXO1XXXI/OPB7914
Port B6XXO1XXXI/OPB61015
(3)
O1XXI/OPB5/
T
(3)
O1XXI/OPB4/
T
Port B3XXO3HSXXXI/OPB3/AIN3/
Port B2XXO3HSXXXI/OPB2/AIN2/
Port B1XXO3HSXXXI/OPB1/AIN1/
Default alternate
function
I2C dataPort B5
I2C clockPort B4
Analog input 3/ Timer
1 external trigger
Analog input 2/ Timer
1 - inverted channel 3
Analog input 1/ Timer
1 - inverted channel 2
Alternate
function after
remap [option
bit]
1621
TIM1_CH1N
1722
SPI_NSS
1823
TIM1_CH1/
UART1_CK
1924
TIM1_CH2
2025
TIM1_CH3
2126
TIM1_CH4/
CLK_CCO
2227
SPI_SCK
2328
SPI_MOSI
Port B0XXO3HSXXXI/OPB0/AIN0/
Port E5XXO3HSXXXI/OPE5/
Port C1XXO3HSXXXI/OPC1/
Port C4XXO3HSXXXI/OPC4/
Port C6XXO3HSXXXI/OPC6/
Analog input 0/ Timer
1 - inverted channel 1
SPI master/slave
select
Timer 1 - channel 1
UART1 clock
Timer 1 - channel 2Port C2XXO3HSXXXI/OPC2/
Timer 1 - channel 3Port C3XXO3HSXXXI/OPC3/
Timer 1 - channel 4
/configurable clock
output
SPI clockPortC5XXO3HSXXXI/OPC5/
SPI master out/slave
in
DocID15441 Rev 922/117
Pinout and pin descriptionSTM8S103K3 STM8S103F3 STM8S103F2
SDIP
32
LQFP/
UFQFP
32
2429
2530
2631
2732
281
292
Pin
name
SPI_MISO
TIM1_BKIN
[CLK_CCO]
SWIM
(4)
[TIM2_CH3]
TIM2_CH2/
ADC_ETR
TIM2_CH1
Type
wpufloating
Ext.
interrupt
OutputInput
High
sink
(1)
PPODSpeed
Main
function
(after
reset)
Port C7XXO3HSXXXI/OPC7/
Port D2XXO3HSXXXI/OPD2
Port D3XXO3HSXXXI/OPD3/
Port D4XXO3HSXXXI/OPD4/BEEP/
Default alternate
function
SPI master in/ slave
out
Timer 1 - break inputPort D0XXO3HSXXXI/OPD0/
SWIM data interfacePort D1XXO4HSXXXI/OPD1/
Timer 2 - channel
2/ADC external
trigger
Timer 2 - channel
1/BEEP output
Alternate
function after
remap [option
bit]
Configurable
clock output
[AFR5]
Timer 2 channel
3[AFR1]
303
314
325
(1)
I/O pins used simultaneously for high current source/sink must be uniformly spaced around the package. In addition, the total
driven current must respect the absolute maximum ratings (see Electrical characteristics).
(2)
When the MCU is in Halt/Active-halt mode, PA1 is automatically configured in input weak pull-up and cannot be used for waking
up the device. In this mode, the output state of PA1 is not driven. It is recommended to use PA1 only in input mode if Halt/Active-halt
is used in the application.
(3)
In the open-drain output column, "T" defines a true open-drain I/O (P-buffer, weak pull-up, and protection diode to VDDare not
implemented).
(4)
The PD1 pin is in input pull-up during the reset phase and after internal reset release.
UART1_TX
UART1_RX
[TIM1_CH4]
UART1 data transmitPort D5XXO3HSXXXI/OPD5/
UART1 data receivePort D6XXO3HSXXXI/OPD6/
Top level interruptPort D7XXO3HSXXXI/OPD7/ TLI
Timer 1 channel 4
[AFR6]
23/117DocID15441 Rev 9
20
19
18
17
16
15
14
13
1
2
3
4
5
6
7
8
UART1_CK/TIM2_CH1/BEEP/(HS)PD4
NRST
V
DD
VCAP
V
SS
OSCOUT/PA2
PD3 (HS)/AIN4/TIM2_CH2/ADC_ETR
PD1 (HS)/SWIM
PB4 (T)/I2C_SCL [ADC_ETR]
PC3 (HS)/TIM1_CH3 [TLI] [TIM1_CH1N]
PC4 (HS)/TIM1_CH4/CLK_CCO/AIN2 [TIM1_CH2N]
PC5 (HS)/SPI_SCK [TIM2_CH1]
12
11
9
10
[SPI_NSS] TIM2_CH3/(HS) PA3
PD2 (HS)/AIN3 [TIM2_CH3]
OSCIN/PA1
PB5 (T)/I2C_SDA [TIM1_BKIN]
UART1_TX/AIN5/(HS) PD5
UART1_RX/AIN6/(HS) PD6
PC6 (HS)/SPI_MOSI [TIM1_CH1]
PC7 (HS)/SPI_MISO [TIM1_CH2]
STM8S103K3 STM8S103F3 STM8S103F2Pinout and pin description
5.2
STM8S103Fx TSSOP20/SO20/UFQFPN20 pinout and pin
description
STM8S103Fx TSSOP20/SO20 pinout5.2.1
Figure 5: STM8S103Fx TSSOP20/SO20 pinout
1. HS high sink capability.
2. (T) True open drain (P-buffer and protection diode to VDDnot implemented).
3. [ ] alternate function remapping option (If the same alternate function is shown twice, it
indicates an exclusive choice not a duplication of the function).
DocID15441 Rev 924/117
2
1
3
4
5
6 7 8
9
11
12
13
14
15
16171819
VCAP
VSS
OSCOUT/PA2
OSCIN/PA1
[SPI_NSS] TIM2_CH3/(HS) PA3
NRST
PD4 (HS)/BEEP / TIM2_CH1/UART1_CK
PD5 (HS)/AIN5/UART1_TX
PD3 (HS)/AIN4/TIM2_CH2/ADC_ETR
PD2 (HS)/AIN3 [TIM2_CH3]
PC4 (HS)/TIM1_CH4/CLK_CCO/AIN2 [TIM1_CH2N]
PC5 (HS)/SPI_SCK [TIM2_CH1]
PC6 (HS)/SPI_MOSI [TIM1_CH1]
PC7 (HS)/SPI_MISO [TIM1_CH2]
PD1(HS)/SWIM
[TIM1_BKIN] I2C_SDA/(T) PB5
10
[TIM1_CH1N] [TLI] TIM1_CH3/(HS) PC3
PD6 (HS)/AIN6/UART1_RX
20
V
DD
[ADC_ETR] I2C_SCL/(T) PB4
Pinout and pin descriptionSTM8S103K3 STM8S103F3 STM8S103F2
STM8S103Fx UFQFPN20 pinout5.2.2
Figure 6: STM8S103Fx UFQFPN20-pin pinout
Pin no.
1. HS high sink capability.
2. (T) True open drain (P-buffer and protection diode to VDDnot implemented).
3. [ ] alternate function remapping option (if the same alternate function is shown twice, it
indicates an exclusive choice not a duplication of the function).
STM8S103K3 STM8S103F3 STM8S103F2Pinout and pin description
Pin no.
OutputInput
TypePin name
203
25
47
69
710
811
1013
1114
1215
1316
1417
1619
1720
UART1 _RX
PA1/ OSCIN
SS
DD
[SPI_ NSS]
[TIM1_ BKIN]
[TLI] [TIM1_
CH1N]
TIM1_
CH4/AIN2/[TIM1_
CH2N]
[TIM2_ CH1]
[TIM1_ CH1]
[TIM1_ CH2]
CH3]
CH2/ ADC_ ETR
(2)
wpufloatingUFQFPN20TSSOP/SO20
Ext.
interr.
High sink
(1)
O1XXI/OPB5/ I2C_ SDA
(3)
O1XXI/OPB4/ I2C_ SCL912
(3)
Main
function
(after
PPODSpeed
reset)
Port D6XXO3HSXXXI/OPD6/ AIN6/
ResetXI/ONRST14
Port A1XXO1XXXI/O
Port A2XXO1XXXI/OPA2/ OSCOUT36
Digital groundSV
1.8 V regulator capacitorSVCAP58
Digital power supplySV
Port A3XXO3HSXXXI/OPA3/ TIM2_ CH3
Port C3XXO3HSXXXI/OPC3/ TIM1_CH3
Port C4XXO3HSXXXI/OPC4/ CLK_CCO/
Port C6XXO3HSXXXI/OPC6/ SPI_MOSI
Port C7XXO3HSXXXI/OPC7/ SPI_MISO
Port D1XXO4HSXXXI/OPD1/ SWIM1518
Port D3XXO3HSXXXI/OPD3/ AIN4/ TIM2_
Default
alternate
function
Analog input 6/
UART1 data
receive
Resonator/
crystal in
Resonator/
crystal out
Timer 2
channel 3
I2C dataPort B5T
I2C clockPort B4T
Timer 1 channel 3
Configurable
clock
output/Timer 1
- channel
4/Analog input
2
SPI clockPort C5XXO3HSXXXI/OPC5/ SPI_SCK
SPI master
out/slave in
SPI master in/
slave out
SWIM data
interface
Analog input 3Port D2XXO3HSXXXI/OPD2/AIN3/[TIM2_
Analog input 4/
Timer 2 channel 2/ADC
external trigger
Alternate function
after remap [option
bit]
SPI master/ slave
select [AFR1]
Timer 1 - break
input [AFR4]
ADC external
trigger [AFR4]
Top level interrupt
[AFR3] Timer 1 inverted channel 1
[AFR7]
Timer 1 - inverted
channel 2 [AFR7]
Timer 2 - channel 1
[AFR0]
Timer 1 - channel 1
[AFR0]
Timer 1 - channel 2
[AFR0]
Timer 2 - channel 3
[AFR1]
(1)
I/O pins used simultaneously for high current source/sink must be uniformly spaced around the package. In addition, the total driven current must respect the absolute
maximum ratings.
(2)
When the MCU is in halt/active-halt mode, PA1 is automatically configured in input weak pull-up and cannot be used for waking up the device. In this mode, the output
state of PA1 is not driven. It is recommended to use PA1 only in input mode if halt/active-halt is used in the application.
(3)
In the open-drain output column, "T" defines a true open-drain I/O (P-buffer, weak pull-up, and protection diode to VDDare not implemented).
DocID15441 Rev 926/117
Pinout and pin descriptionSTM8S103K3 STM8S103F3 STM8S103F2
Alternate function remapping5.3
As shown in the rightmost column of the pin description table, some alternate functions can
be remapped at different I/O ports by programming one of eight AFR (alternate function
remap) option bits. When the remapping option is active, the default alternate function is no
longer available.
To use an alternate function, the corresponding peripheral must be enabled in the peripheral
registers.
Alternate function remapping does not effect GPIO capabilities of the I/O ports (see the GPIO
section of the family reference manual, RM0016).
27/117DocID15441 Rev 9
0x00 9FFF
Flash program memory
(8 Kbytes)
0x00 0000
RAM
0x00 03FF
(1 Kbyte)
513 bytes stack
0x00 4000
0x00 427F
640 bytes data EEPROM
Reserved
Reserved
Reserved
0x00 4280
0x00 A000
0x02 7FFF
0x00 47FF
0x00 8000
32 interrupt vectors
0x00 807F
GPIO and periph. reg.
0x00 5000
0x00 57FF
0x00 5800
0x00 7FFF
0x00 480B
0x00 4FFF
0x00 7EFF
CPU/SWIM/debug/ITC
registers
0x00 7F00
Reserved
Reserved
Option bytes
0x00 480A
0x00 4800
0x00 0800
0x00 3FFF
0x00 8080
Reserved
Unique ID
0x00 4864
0x00 4865
0x00 4870
0x00 4871
STM8S103K3 STM8S103F3 STM8S103F2Memory and register map
Memory and register map6
Memory map6.1
Figure 7: Memory map
DocID15441 Rev 928/117
Memory and register mapSTM8S103K3 STM8S103F3 STM8S103F2
Register map6.2
I/O port hardware register map6.2.1
Table 7: I/O port hardware register map
0x00 5000
0x00 5005
0x00 500A
Port A
Port B
Port C
Register nameRegister labelBlockAddress
Reset
status
0x00Port A data output latch registerPA_ODR
(1)
Port A input pin value registerPA_IDR0x00 5001
0xXX
0x00Port A data direction registerPA_DDR0x00 5002
0x00Port A control register 1PA_CR10x00 5003
0x00Port A control register 2PA_CR20x00 5004
0x00Port B data output latch registerPB_ODR
(1)
Port B input pin value registerPB_IDR0x00 5006
0xXX
0x00Port B data direction registerPB_DDR0x00 5007
0x00Port B control register 1PB_CR10x00 5008
0x00Port B control register 2PB_CR20x00 5009
0x00Port C data output latch registerPC_ODR
(1)
Port C input pin value registerPB_IDR0x00 500B
0xXX
0x00Port C data direction registerPC_DDR0x00 500C
0x00 500F
0x00 5014
Port D
Port E
0x00Port C control register 1PC_CR10x00 500D
0x00Port C control register 2PC_CR20x00 500E
0x00Port D data output latch registerPD_ODR
(1)
Port D input pin value registerPD_IDR0x00 5010
0xXX
0x00Port D data direction registerPD_DDR0x00 5011
0x02Port D control register 1PD_CR10x00 5012
0x00Port D control register 2PD_CR20x00 5013
0x00Port E data output latch registerPE_ODR
(1)
Port E input pin value registerPE_IDR0x00 5015
0xXX
0x00Port E data direction registerPE_DDR0x00 5016
0x00Port E control register 1PE_CR10x00 5017
29/117DocID15441 Rev 9
STM8S103K3 STM8S103F3 STM8S103F2Memory and register map
0x00 5019
Port F
(1)
Depends on the external circuitry.
General hardware register map6.2.2
Register nameRegister labelBlockAddress
Port F input pin value registerPF_IDR0x00 501A
Table 8: General hardware register map
Register nameRegister labelBlockAddress
Reset
status
0x00Port E control register 2PE_CR2Port E0x00 5018
0x00Port F data output latch registerPF_ODR
0xXX
0x00Port F data direction registerPF_DDR0x00 501B
0x00Port F control register 1PF_CR10x00 501C
0x00Port F control register 2PF_CR20x00 501D
Reset
status
(1)
0x00 5059
0x00 5061
Reserved area (60 bytes)0x00 501E to
Flash0x00 505A
0x00Flash control register 1FLASH_CR1
0x00Flash control register 2FLASH_CR20x00 505B
FLASH_NCR20x00 505C
0xFFFlash complementary control register
2
0x00Flash protection registerFLASH _FPR0x00 505D
FLASH _NFPR0x00 505E
0xFFFlash complementary protection
register
FLASH _IAPSR0x00 505F
0x00Flash in-application programming
status register
Reserved area (2 bytes)0x00 5060 to
DocID15441 Rev 930/117
Memory and register mapSTM8S103K3 STM8S103F3 STM8S103F2
Option bytes contain configurations for device hardware features as well as the memory
protection of the device. They are stored in a dedicated block of the memory. Except for the
ROP (read-out protection) byte, each option byte has to be stored twice, in a regular form
(OPTx) and a complemented one (NOPTx) for redundancy.
Option bytes can be modified in ICP mode (via SWIM) by accessing the EEPROM address
shown in the table below.
Option bytes can also be modified ‘on the fly’ by the application in IAP mode, except the ROP
option that can only be modified in ICP mode (via SWIM).
Refer to the STM8S Flash programming manual (PM0051) and STM8 SWIM communication
protocol and debug module user manual (UM0470) for information on SWIM programming
procedures.
1: Port C5 alternate function = TIM2_CH1; port C6
alternate function = TIM1_CH1; port C7 alternate
function = TIM1_CH2.
(1)
Refer to pinout description.
(2)
Do not use more than one remapping option in the same port. It is forbidden to enable
both AFR1 and AFR0.
(2)
DocID15441 Rev 948/117
Unique IDSTM8S103K3 STM8S103F3 STM8S103F2
Unique ID9
The devices feature a 96-bit unique device identifier which provides a reference number that
is unique for any device and in any context. The 96 bits of the identifier can never be altered
by the user.
The unique device identifier can be read in single bytes and may then be concatenated using
a custom algorithm.
The unique device identifier is ideally suited:
For use as serial numbers
•
For use as security keys to increase the code security in the program memory while using
•
and combining this unique ID with software cryptograhic primitives and protocols before
programming the internal memory.
Unless otherwise specified, all voltages are referred to VSS.
Minimum and maximum values10.1.1
Unless otherwise specified the minimum and maximum values are guaranteed in the worst
conditions of ambient temperature, supply voltage and frequencies by tests in production on
100 % of the devices with an ambient temperature at TA= 25 °C and TA= T
the selected temperature range).
Data based on characterization results, design simulation and/or technology characteristics
are indicated in the table footnotes and are not tested in production. Based on characterization,
the minimum and maximum values refer to sample tests and represent the mean value plus
or minus three times the standard deviation (mean ± 3 Σ).
Typical values10.1.2
Unless otherwise specified, typical data are based on TA= 25 °C, VDD= 5 V. They are given
only as design guidelines and are not tested.
Amax
(given by
Typical ADC accuracy values are determined by characterization of a batch of samples from
a standard diffusion lot over the full temperature range, where 95% of the devices have an
error less than or equal to the value indicated (mean ± 2 Σ).
Typical curves10.1.3
Unless otherwise specified, all typical curves are given only as design guidelines and are not
tested.
Loading capacitor10.1.4
The loading conditions used for pin parameter measurement are shown in the following figure.
The input voltage measurement on a pin of the device is described in the following figure.
Figure 9: Pin input voltage
Absolute maximum ratings10.2
Stresses above those listed as ‘absolute maximum ratings’ may cause permanent damage
to the device. This is a stress rating only and functional operation of the device under these
conditions is not implied. Exposure to maximum rating conditions for extended periods may
affect device reliability.
Table 16: Voltage characteristics
UnitMaxMinRatingsSymbol
V
V
|V
|V
V
DDx
IN
DDx
SSx
ESD
- V
SS
- VDD|
- VSS|
Supply voltage
Input voltage on true open drain pins
Input voltage on any other pin
Variations between different power pins
Variations between all the different ground
pins
Electrostatic discharge voltage
(1)
(2)
(2)
VDD+ 0.3VSS- 0.3
See "Absolute
maximum ratings
6.5-0.3
6.5VSS- 0.3
V
50-
mV
50-
(electrical sensitivity)"
(1)
All power (VDD) and ground (VSS) pins must always be connected to the external power supply
(2)
I
cannot be respected, the injection current must be limited externally to the I
must never be exceeded. This is implicitly insured if VINmaximum is respected. If VINmaximum
INJ(PIN)
INJ(PIN)
value. A positive
injection is induced by VIN>VDDwhile a negative injection is induced by VIN<VSS. For true open-drain
pads, there is no positive injection current, and the corresponding VINmaximum must always be respected
Data based on characterization results, not tested in production.
(2)
All power (VDD) and ground (VSS) pins must always be connected to the external supply.
(3)
I
(3)
Total injected current (sum of all I/O and control pins)
must never be exceeded. This is implicitly insured if VINmaximum is respected. If VINmaximum
INJ(PIN)
cannot be respected, the injection current must be limited externally to the I
(5)
(5)
INJ(PIN)
value. A positive
(1)
100
80
20
- 20
± 4
± 4
± 4
± 20
injection is induced by VIN>VDDwhile a negative injection is induced by VIN<VSS. For true open-drain
pads, there is no positive injection current, and the corresponding VINmaximum must always be respected
(4)
ADC accuracy vs. negative injection current: Injecting negative current on any of the analog input pins
should be avoided as this significantly reduces the accuracy of the conversion being performed on
another analog input. It is recommended to add a Schottky diode (pin to ground) to standard analog pins
which may potentially inject negative current. Any positive injection current within the limits specified for
I
INJ(PIN)
(5)
and ΣI
INJ(PIN)
in the I/O port pin characteristics section does not affect the ADC accuracy.
When several inputs are submitted to a current injection, the maximum ΣI
INJ(PIN)
is the absolute sum
of the positive and negative injected currents (instantaneous values). These results are based on
characterization with ΣI
INJ(PIN)
maximum current injection on four I/O port pins of the device.
Care should be taken when selecting the capacitor, due to its tolerance, as well as the parameter
dependency on temperature, DC bias and frequency in addition to other factors. The parameter maximum
value must be respected for the full application range.
(2)
This frequency of 1 MHz as a condition for VCAP parameters is given by design of internal regulator.
(3)
To calculate P
value for T
Dmax(TA
given in the previous table and the value for ΘJAgiven in Thermal characteristics.
Jmax
), use the formula P
Dmax
=(T
- TA)/ΘJA(see Thermal characteristics ) with the
Jmax
t
VDD
Figure 10: f
CPUmax
versus V
DD
Table 20: Operating conditions at power-up/power-down
(1)
UnitMaxTypMinConditionsParameterSymbol
∞-2VDDrise time rate
μs/V
∞-2VDDfall time rate
TEMP
IT+
IT-
HYS(BOR)
(1)
Reset is always generated after a t
minimum ooperating voltage (VDDmin) when the t
VCAP external capacitor10.3.1
Stabilization for the main regulator is achieved connecting an external capacitor C
V
CAP
pin. C
is specified in the Operating conditions section. Care should be taken to limit
EXT
the series inductance to less than 15 nH.
2.852.72.6Power-on reset thresholdV
2.82.652.5Brown-out reset thresholdV
delay. The application must ensure that VDDis still above the
Data based on a differential IDDmeasurement between reset configuration and timer counter running
TIM1 supply current
TIM2 supply current
TIM4 timer supply current
UART1 supply current
SPI supply current
I2C supply current
ADC1 supply current when converting
(1)
(1)
(1)
(2)
(2)
(2)
(3)
210
130
50
120
45
65
1000
μA
at 16 MHz. No IC/OC programmed (no I/O pads toggling). Not tested in production.
(2)
Data based on a differential IDDmeasurement between the on-chip peripheral when kept under reset
and not clocked and the on-chip peripheral when clocked and not kept under reset. No I/O pads toggling.
Not tested in production.
(3)
Data based on a differential IDDmeasurement between reset configuration and continuous A/D
conversions. Not tested in production.
Current consumption curves10.3.2.8
The following figures show typical current consumption measured with code executing in
RAM.
External clock sources and timing characteristics10.3.3
HSE user external clock
Subject to general operating conditions for VDDand TA.
Table 32: HSE user external clock characteristics
User external clock source
frequency
(1)
OSCIN input pin high level
voltage
(1)
OSCIN input pin low level
voltage
OSCIN input leakage currentI
VSS< VIN< V
DD
UnitMaxMinConditionsParameterSymbol
MHz160
DD
VDD+ 0.3 V0.7 x V
V
V
SS
0.3 x V
DD
μA+1-1
65/117DocID15441 Rev 9
(1)
V
HSEH
V
HSEL
External clock
source
OSCIN
f
HSE
STM8
Data based on characterization results, not tested in production.
Figure 18: HSE external clocksource
HSE crystal/ceramic resonator oscillator
The HSE clock can be supplied with a 1 to 16 MHz crystal/ceramic resonator oscillator. All
the information given in this paragraph is based on characterization results with specified
typical external components. In the application, the resonator and the load capacitors have
to be placed as close as possible to the oscillator pins in order to minimize output distortion
and start-up stabilization time. Refer to the crystal resonator manufacturer for more details
(frequency, package, accuracy...).
C is approximately equivalent to 2 x crystal Cload.
(2)
The oscillator selection can be optimized in terms of supply current using a high quality resonator with
small Rmvalue. Refer to crystal manufacturer for more details
(3)
Data based on characterization results, not tested in production.
(4)
t
SU(HSE)
is the start-up time measured from the moment it is enabled (by software) to a stabilized 16
MHz oscillation is reached. This value is measured for a standard crystal resonator and it can vary
significantly with the crystal manufacturer.
Figure 19: HSE oscillator circuit diagram
HSE oscillator critical gmequation
g
mcrit
= (2 × Π × f
)2× Rm(2Co + C)
HSE
2
Rm: Notional resistance (see crystal specification)
Lm: Notional inductance (see crystal specification)
Cm: Notional capacitance (see crystal specification)
Co: Shunt capacitance (see crystal specification)
CL1= CL2= C: Grounded external capacitance
gm>> g
mcrit
Internal clock sources and timing characteristics10.3.4
Subject to general operating conditions for VDDand TA.
Data based on characterization results, not tested in production.
(2)
The physical granularity of the memory is 4 bytes, so cycling is performed on 4 bytes
even when a write/erase operation addresses a single byte.
I/O port pin characteristics10.3.6
General characteristics
Subject to general operating conditions for VDDand TAunless otherwise specified. All unused
pins must be kept at a fixed voltage: using the output mode of the I/O for example or an
external pull-up or pull-down resistor.
Figure 36: Typical NRST pull-up resistance vs VDD@ 4 temperatures
Figure 37: Typical NRST pull-up current vs VDD@ 4 temperatures
The reset network shown in the following figure protects the device against parasitic resets.
The user must ensure that the level on the NRST pin can go below V
IL(NRST)
max. (see Table
38: I/O static characteristics ), otherwise the reset is not taken into account internally.
For power consumption sensitive applications, the external reset capacitor value can be
reduced to limit the charge/discharge current. If NRST signal is used to reset external circuitry,
attention must be taken to the charge/discharge time of the external capacitor to fulfill the
external devices reset timing conditions. Minimum recommended capacity is 100 nF.
by the external source. The internal resistance of the analog source must allow the
capacitance to reach its final voltage level within tS.After the end of the sample time tS,
changes of the analog input voltage have no effect on the conversion result. Values for the
sample clock tSdepend on programming.
Data based on characterization results, not tested in production.
(2)
ADC accuracy vs. negative injection current: Injecting negative current on any of the
20.8f
analog input pins should be avoided as this significantly reduces the accuracy of the
conversion being performed on another analog input. It is recommended to add a Schottky
diode (pin to ground) to standard analog pins which may potentially inject negative current.
Any positive injection current within the limits specified for I
INJ(PIN)
and ΣI
INJ(PIN)
in the I/O
port pin characteristics section does not affect the ADC accuracy.
Data based on characterization results, not tested in production.
(2)
ADC accuracy vs. negative injection current: Injecting negative current on any of the
(2)
(2)
(2)
ADC
ADC
ADC
ADC
ADC
ADC
= 2 MHzGain error
= 4 MHz
= 2 MHzDifferential linearity error
= 4 MHz
= 2 MHzIntegral linearity error
= 4 MHz
2.51.5f
31.3f
32f
10.7f
1.50.7f
1.50.6f
20.8f
analog input pins should be avoided as this significantly reduces the accuracy of the
conversion being performed on another analog input. It is recommended to add a Schottky
diode (pin to ground) to standard analog pins which may potentially inject negative current.
Any positive injection current within the limits specified for I
INJ(PIN)
and ΣI
INJ(PIN)
in I/O port
pin characteristics does not affect the ADC accuracy.
While executing a simple application (toggling 2 LEDs through I/O ports), the product is
stressed by two electromagnetic events until a failure occurs (indicated by the LEDs).
FESD: Functional electrostatic discharge (positive and negative) is applied on all pins of
•
the device until a functional disturbance occurs. This test conforms with the IEC 61000-4-2
standard.
FTB: A burst of fast transient voltage (positive and negative) is applied to VDDand V
•
SS
through a 100 pF capacitor, until a functional disturbance occurs. This test conforms with
the IEC 61000-4-4 standard.
A device reset allows normal operations to be resumed. The test results are given in the table
below based on the EMS levels and classes defined in application note AN1709 (EMC design
guide for STMicrocontrollers).
Designing hardened software to avoid noise problems10.3.11.2
EMC characterization and optimization are performed at component level with a typical
application environment and simplified MCU software. It should be noted that good EMC
performance is highly dependent on the user application and the software in particular.
Therefore it is recommended that the user applies EMC software optimization and
prequalification tests in relation with the EMC level requested for his application.
Most of the common failures (unexpected reset and program counter corruption) can be
recovered by applying a low state on the NRST pin or the oscillator pins for 1 second.
To complete these trials, ESD stress can be applied directly on the device, over the range of
specification values. When unexpected behavior is detected, the software can be hardened
to prevent unrecoverable errors occurring. See application note AN1015 (Software techniques
for improving microcontroller EMC performance).
Table 48: EMS data
ConditionsParameterSymbol
Level/
class
V
FESD
Voltage limits to be
applied on any I/O pin to
induce a functional
VDD= 3.3 V, TA= 25 °C, f
MASTER
= 16 MHz
(HSI clock), conforming to IEC 61000-4-2
2/B
(1)
disturbance
V
EFTB
Fast transient voltage
burst limits to be applied
through 100 pF on V
DD
and VSSpins to induce a
VDD= 3.3 V, TA= 25 °C ,f
MASTER
= 16 MHz
(HSI clock),conforming to IEC 61000-4-4
4/A
(1)
functional disturbance
(1)
Data obtained with HSI clock configuration, after applying HW recommendations described
in AN2860 (EMC guidelines for STM8S microcontrollers).
Electromagnetic interference (EMI)10.3.11.3
Based on a simple application running on the product (toggling 2 LEDs through the I/O ports),
the product is monitored in terms of emission. This emission test is in line with the norm SAE
IEC 61967-2 which specifies the board and the loading of each pin.
Data based on characterisation results, not tested in production.
SAE EMI level
2.52.5
Absolute maximum ratings (electrical sensitivity)10.3.11.4
Based on three different tests (ESD, DLU and LU) using specific measurement methods, the
product is stressed to determine its performance in terms of electrical sensitivity. For more
details, refer to the application note AN1181.
Electrostatic discharge (ESD)10.3.11.5
Electrostatic discharges (a positive then a negative pulse separated by 1 second) are applied
to the pins of each sample according to each pin combination. The sample size depends on
the number of supply pins in the device (3 parts*(n+1) supply pin). One model can be simulated:
Human body model. This test conforms to the JESD22-A114A/A115A standard. For more
details, refer to the application note AN1181.
Data based on characterization results, not tested in production
Static latch-up10.3.11.6
Two complementary static tests are required on 10 parts to assess the latch-up performance:
A supply overvoltage (applied to each power supply pin)
•
A current injection (applied to each input, output and configurable I/O pin) are performed
•
on each sample.
This test conforms to the EIA/JESD 78 IC latch-up standard. For more details, refer to the
application note AN1181.
Table 51: Electrical sensitivities
ConditionsParameterSymbol
Static latch-up classLU
(1)
Class description: A Class is an STMicroelectronics internal specification. All its limits
are higher than the JEDEC specifications, that means when a device belongs to class A it
exceeds the JEDEC standard. B class strictly covers all the JEDEC criteria (international
standard).
Class
ATA= 25 °C
ATA= 85 °C
ATA= 125 °C
(1)
93/117DocID15441 Rev 9
5V_ME
L
A1K
L1
c
A
A2
ccc
C
D
D1
D3
E3
E1 E
16
17
24
25
b
32
1
Pin 1
identification
8
9
STM8S103K3 STM8S103F3 STM8S103F2Package information
Package information11
In order to meet environmental requirements, ST offers these devices in different grades of
ECOPACK®packages, depending on their level of environmental compliance. ECOPACK
specifications, grade definitions and product status are available at: www.st.com. ECOPACK
is an ST trademark.