AMICCOM-Elec-A81X05F5001AQ5A-Q
| Part # | AMICCOM-Elec-A81X05F5001AQ5A-Q |
| Download | AMICCOM-Elec-A81X05F5001AQ5A-Q |
A8105
2.4GHz FSK/GFSK SoC
Document Title
A8105 Data Sheet, 2.4GHz FSK/GFSK SOC
Revision History
Rev. No.
History
Issue Date
June, 2012
Sep, 2012
Sep, 2013
Remark
Objective
Obj
ctive
eliminary
0.0
0.1
0.2
Initial issue.
Add RF register
Modify RF register
0.3
0.4
0.5
0.6
Remove
RCADC
Oct,, 2013
Jan., 2014
Apr., 2014
Se
., 20
Preliminary
Preliminary
Preliminary
Preliminary
Revise Order information
Add 32Kbytes Flash version and related information.
Add die form and QFN48L in order information.
Add reset timing of stable power and RESETN pin
Add P2 registers for extra 4 GPIO for 32KB flash version
Important Notice
:
AMICCOM reserves the right to make changes to its products or to discontinue any integrated circuit product or service without
notice. AMICCOM integrated circuit products are not designed, intended, authorized, or warranted to be suitable for use in
life-support applications, devices or systems or other critical applications. Use of AMICCOM products in such applications is
understood to be fully at the risk of the customer.
Sep., 2014, Version 0.6 (Preliminary)
1
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
Table of Contents
5. Pin Description (I: input; O: output, I/O: input or output) …………………………………………………………………………………………..
.
5
Sep., 2014, Version 0.6 (Preliminary)
2
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
Sep., 2014, Version 0.6 (Preliminary)
3
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
Sep., 2014, Version 0.6 (Preliminary)
4
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
Sep., 2014, Version 0.6 (Preliminary)
5
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
Sep., 2014, Version 0.6 (Preliminary)
6
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
1. General Description
A8105 is a high performance and low cost 2.4GHz FSK/GFSK system-on-chip (SOC) wireless transceiver. With on chip
fraction-N synthesizer, it can support the application of data rate from 5Kbps to 2Mbps and frequency hopping system and it
can support peripheral mode of Bluetooth Low Energy. It is a Bluetooth smart device. This device integrates high speed
pipeline 8051 MCU, 32/16KBytes In-system programmable flash memory, 2KB SRAM, various powerful functions and
excellent performance of a leading 2.4GHz FSK/GFSK RF transceiver. It can be operated with wide voltage from 2.0V ~ 3.6V.
A8105 has various operating modes, making it highly suited for systems where ultra-low power consumption is required.
Besides, A8105 has two flash memory sizes. One is 16KBytes (A8105F4) and the other is 32Kbytes (A8105F5) that supports
AES128 engine and CCM. The device has two package sizes. A8105F4 and A8105F5 are QFN5X5 40 pin package and only
A8105F5 has QFN5x5 48pin package.
2. Typical Applications
2400 ~ 2483.5 MHz ISM frequency hopping system
Smart remote controller
Home and building automation
Wireless toy and gaming
Helicopter and airplane radio controller
Bluetooth smart device
Wireless keyboard and mouse
3. Feature
Package size (QFN5 X5, 40 pins/ 48 pins).
High performance pipeline complicated 8051
Operation clock: 1, 1/2, 1/4, 1/8, 1/16, 1/32, 1/64 of crystal oscilla
or.
32/16KB Flash memory with copy protection, 2KB SARM
UART, I
2
C, SPI serial communication
Three 16/8-bit counter/timers
Two Channel PWM
Watchdog timer
Sleep timer
In-Circuit Debugger
In-System programming/ In-Application p
ogramming
24/ 28 GPIO(28 I/O only in QFN48)
RX current consumption with MCU in oper
tion mode :18mA
TX current consumption with MCU
n operation mode (18.5mA @ 0dBm, 21mA @ 6 dBm output power).
Deep sleep current (0.8 uA)
Low sleep current (3 uA)
Frequency band: 2400
–
MH
.
FSK and GFSK modula
High sensitivity:
-96dBm at 500Kbps data rate
-92dBm at 1Mbps
ata rate
-90dBm at 2Mbps data rate
Programma
le da
rate 4K ~ 2Mbps.
Fast settl
ng time synthesizer for frequency hopping system.
Built-
ther
al sensor for monitoring relative temperature.
B
ilt-in one channel 8-bits ADC for external analog voltage (0V ~ 1.2V).
Bu
t-in
ight channels 12-bits ADC for general purpose analog input (0V ~ 1.8 V).
Built-
n Low Battery Detector.
upport low cost crystal (8 /12 / 16 / 24MHz).
Low cost BLE application
Easy to use.
Change frequency channel by ONE register setting.
8-bits Digital RSSI for clear channel indication.
Auto RSSI measurement.
Auto WOR (wake up when receive RX packet).
Auto WOT (wake up to transmit TX packet).
Auto Calibrations.
Auto IF function.
Auto Frequency Compensation.
Auto CRC Check.
Auto FEC by (7, 4) Hamming code (1 bit error correction / code word).
Data Whitening for encryption and decryption.
Sep., 2014, Version 0.6 (Preliminary)
1
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
Separated 64 bytes RX and TX FIFO
Sep., 2014, Version 0.6 (Preliminary)
2
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
4. Pin Configurations
36
35
34
P1.5
1
N.C.
P1.4
P1.3
P1.2
P1.1
P3.7
GND
2
3
RESETN
VDD_S
4
5
33
32
VDD_D
BP_BG
VDD_R
6
7
8
P1.0
P0.7
31
30
29
28
P0.6
P0.5
P0.4
9
VDD_A
RFI
10
11
12
27
26
P0.3
2.0
RFO
N.C.
25
Fig 4-1. A8105 QFN 5×5 48 pin Package Top View
Sep., 2014, Version 0.6 (Preliminary)
3
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
30
29
P1.4
P1.3
P1.2
P1.1
P3.7
GND
1
2
RESETN
VDD_S
3
4
28
27
VDD_D
BP_BG
VDD_R
5
6
7
P1.0
P0.7
26
25
24
P0.6
P0.5
P0.4
8
9
VDD_A
RFI
23
22
10
P0.3
RFO
21
Fig 4-2. A8105 QFN 5×5 40 pin Package Top View
Sep., 2014, Version 0.6 (Preliminary)
4
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
5. Pin Description (I: input; O: output, I/O: input or output)
Pin No.
Symbol
I/O
Function Description
1
NC
2
P3.7
NC
DIO/AI
RTC_O
No connection
3
4
RESETN
VDD_S
VDD_D
BP_BG
VDD_R
VDD_A
RFI
DI
RESETN
5
AO
AO
AO
AO
AO
AI
Voltage supply for SARM
6
VDD_D
BP_BG
VDD_R
VDD_A
RFI
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
RFO
NC
AO
RFO
NC
NC
VDD_V
CP
AI
VDD_VCO
AO
CP
XI
XI
AI
XO
XO
AO
VDD_PLL
REGI
VDD_P
REGI
P0.0
P0.1
P0.2
GND
P2.0
P0.3
P0.4
P0.
0.6
P
.7
P1.0
P1.1
P1.2
P1.3
P1.4
P1.5
P1.6
P1.7
P3.0
P3.1
AO
AI
SPI_SCLK
SPI
MOSI
SPI_MISO
GND
DIO
DIO
DIO
D
DIO
DIO
DIO
DIO
DIO
DIO
DIO
DIO
DIO
DIO
DIO
DIO
DIO
DIO
DIO
DIO
P2.0
SPI_SSEL
GPIO/ ICE mode
I2C_SCL
I2C_SDA
INT2 /GIO1
Timer2_T2
Timer2_T2EX
INT3 /GIO2
INT4/ CKO
TTAG_TTDIO
TTAG_TTCK
PWM0/ADC4
PWM1/ADC5
UART0_RX/ADC6
UART0_TX/ADC7
Sep., 2014, Version 0.6 (Preliminary)
5
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
41
42
43
44
45
46
47
48
P3.2
P2.1
P2.2
P2.3
P3.3
P3.4
P3.5
P3.6
DIO/AI
DIO
INT0/ADC0
P2.1
DIO
P2.2
DIO
P2.3
DIO/AI
DIO/AI
DIO/AI
DIO/AI
INT1/ADC1
Timer0_T0/ADC2
Timer1_T1/ADC3
RTC_I
Table 5-1 QFN5x5 48 Pin
Pin No.
1
Symbol
P3.7
I/O
Function Description
DIO/AI
RTC_O
No connection
2
NC
3
RESETN
VDD_S
VDD_D
BP_BG
VDD_R
VDD_A
RFI
DI
RESETN
Voltage supply for SARM
VDD_D
4
AO
AO
AO
AO
AO
AI
5
6
BP_BG
7
VDD_R
8
VDD_A
9
RFI
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
RFO
AO
AI
RFO
VDD_VCO
CP
VDD_VC
AO
AI
CP
I
XI
XO
XO
AO
A
AI
VDD_PLL
REGI
VDD_PLL
REGI
P0.0
SPI_SCLK
SPI_MOSI
SPI_MISO
GND
D
O
DIO
DIO
DIO
DIO
DIO
DIO
DIO
DIO
DIO
DIO
DIO
DIO
DIO
DIO
P0.1
P0.2
GND
SPI_SSEL
GPIO/ ICE mode
I2C_SCL
P
3
P0.4
P0.5
P0.6
I2C_SDA
P0.7
INT2 /GIO1
Timer2_T2
Timer2_T2EX
INT3 /GIO2
INT4/ CKO
TTAG_TTDIO
TTAG_TTCK
P1.0
P1.1
P1.2
P1.3
P1.4
P1.5
Sep., 2014, Version 0.6 (Preliminary)
6
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
32
33
34
35
36
37
38
39
40
P1.6
P1.7
P3.0
P3.1
P3.2
P3.3
P3.4
P3.5
P3.6
DIO
DIO
PWM0/ADC4
PWM1/ADC5
UART0_RX/ADC6
UART0_TX/ADC7
INT0/ADC0
DIO
DIO
DIO/AI
DIO/AI
DIO/AI
DIO/AI
DIO/AI
INT1/ADC1
Timer0_T0/ADC2
Timer1_T1/ADC3
RTC_I
Table 5-1 QFN5x5 40 Pin
6. Chip Block Diagram
35
34
3
32
31
40
39
38
37
36
1
2
P3.7
NC
30
29
P1.4
P1.3
Regulator
UART
1
it SA
ADC
PWM
0/1
interface
RTC
CLK GEN
3
4
Debug
ICE
RESETN
VDD_S
32/16KB
Flash
Memory
28
27
P1.2
P1.1
Timer
0/1/2
interface
80
Cor
2KB
SRAM
5
6
VDD_D
BP_BG
26
25
P1.0
P0.7
AD
AGC
Battery
Detect
AES128
CCM*
AFC
24
I2C
interface
7
8
VDD_R
VDD_A
P0.6
CRC
Filtering
23
22
P0.5
P0.4
P0.3
LNA
Fractional-
N PLL
Radio
Control
9
R
PA
VCO
SPI
interface
21
10
XOSC
CLK GEN
Sigma-Delta
Modulator
RFO
Gaussian
Filter
11
12
13
14
15
16
17
18
19
20
Fig 6-1. A8105 QFN5x5 40 pin Block Diagram
Note*: Only 32KByes version (A8105F5) support AES128/CCM*.
Sep., 2014, Version 0.6 (Preliminary)
7
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
7. Absolute Maximum Ratings
Parameter
Supply voltage range (VDD)
Digital IO pins range
With respect to
GND
Rating
-0.3 ~ 3.6
-0.3 ~ VDD+0.3
-0.3 ~ 2.1
14
Unit
V
GND
V
Voltage on the analog pins range
Input RF level
GND
V
dBm
C
V
Storage Temperature range
ESD Rating
-55 ~ 125
± 2K
HBM
MM
± 100
V
*Stresses above those listed under “Absolute Maximum Rating” may cause permanent dam
e to the device. These are
stress ratings only; functional operation of the device at these or any other conditions above those indicated in the operational
sections of this specification is not implied. Exposure to absolute-maximum-rated conditions for extended periods may affect
device reliability.
*Device is ESD sensitive. Use appropriate ESD precautions. HBM (Human Body
) is tested under MIL-STD-883F Method
3015.7. MM (Machine Mode) is tested under JEDEC EIA/JESD22-A115-A.
*Device is Moisture Sensitivity Level III (MSL 3).
Sep., 2014, Version 0.6 (Preliminary)
8
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
8. Electrical Specification
(Ta=25
℃
,
REGI = 3.3V, internal regulator voltage = 1.8V,
unless otherwise noted)
Parameter
Description
Min.
Type
Max.
Unit
General
Operating Temperature
-40
2.0
85
C
V
Supply Voltage
With internal regulator
Deep Sleep
3
6
Current Consumption
(MCU only, RF in sleep mode)
0.8
3
uA
uA
uA
mA
mA
Sleep(WOR/TWOR off)
Sleep (WOR /TWOR wake)
Normal
5
2.5
Current Consumption
Standby Mode
(RF with MCU in normal mode)
PLL Mode
9.5
1
.5
18
mA
mA
mA
mA
mA
RX Mode (AGC Off)
RX Mode (AGC On)
TX Mode (@0dBm output)
TX Mode (@6dBm output)
18.5
23.5
Synthesizer block
(includes crystal oscillator, PLL and VCO.)
Crystal start up time
Idle to standby (Xtal, 49US typ
,
is stable at 40ppm)
0.6
ms
16
Crystal frequency
Crystal ESR
MHz
ohm
MHz
dBc
80
VCO Operation Frequency
PLL phase noise
2400
2483.5
80
95
105
Offset 100k
Offset 5
0K
Offset 1M
PLL settling time
75
0
@Lo
p BW = 100Khz
S
TX
Output power range
Out Band Spurious Emission
-10
10
-36
-30
-47
-47
dBm
dBm
dBm
dBm
dBm
30MHz~1GHz
1GHz~12.75GHz
1.8GHz~ 1.9GHz
5.15GHz~ 5.3GHz
500Kbps
Frequency deviati
n
186K
250K
500K
Hz
Hz
1M
2M
Hz
Data rate
4K
2M
Bps
S
TX settling time
70
Loop bandwidth 100K
RX
dBm
dBm
dBm
KHz
KHz
dB
Receiver sensitivity
@ BER = 0.1%
Data rate 2M (F
IF
= 2MHz)
Data rate 1M (F
IF
= 1MHz)
Data rate 500K (F
IF
= 1MHz)
-90
-92
-96
IF frequency bandwidth
IF center frequency
Interference
1200/2400
1000/2000
11
Co-Channel (C/I
0
)
1
st
Adjacent Channel (C/I
1
)
2
dB
Sep., 2014, Version 0.6 (Preliminary)
9
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
2
nd
Adjacent Channel (C/I
2
)
3
rd
Adjacent Channel (C/I
3
)
-18
-28
-12
dB
dB
Image (C/I
IM
)
dB
Maximum Operating Input Power
Spurious Emission
@RF input (BER=0.1%)
30MHz~1GHz
0
dBm
dBm
dBm
dBm
-52
-47
-10
1GHz~12.75GHz
@RF input
RSSI Range with AGC turn on
-100
0
12Bit SAR ADC
Input voltage range
External reference voltage
Input capacitor
1.
V
V
1.8
25
pF
Bandwidth
200
0
KHz
bit
EOB, effective number of bits
INL
+/- 2
+/-1
LSB
LSB
uS
DNL
Conversion time
Current consumption
1
8
0.4
mA
Regulator
Regulator settling time
Band-gap reference voltage
Regulator output voltage
Pin 19 connected to 1nF
200
1.21
1.8
s
V
V
Digital IO DC characteristics
High Level Input Voltage (V
IH
)
Low Level Input Voltage (V
IL
)
0.8*VDD
VDD
0.2*VDD
VDD
V
V
V
V
0
VDD-0.4
0
High Level Output Voltage (V
OH
)
@I
OH
= -0.5mA
@I
OL
=
mA
Low Level Output Voltage (V
OL
)
0.4
Sep., 2014, Version 0.6 (Preliminary)
10
AMICCOM Electronics Corporation
9. SFR & RFR(Radio Frequency Register)
A8105 contains standard 8051 SFRs(special function registers) and RFR (RF control registers). A8051
’
s SFR location is almost
the same as the standard 8052 SFR location. RFR is Radio Frequency Registers are located in XDATA spaces and located in
0x0800 ~ 0x08FF. For more detail information, please reference Section 9.2.
9.1 SFR Overview
Table 9.1 A8105 Special Function Registers (SFRs) table
0/8
1/9
2/A
3/B
4/C
5/D
6/E
7/F
0xF8
0xF0
0xE8
0xE0
0xD8
0xD0
0xC8
0xC0
0xB8
0xB0
0xA8
0xA0
0x98
0x90
0x88
0x80
EIP
B
OSCCON
I2CSADR
I2CSCR
I2CSBUF
I2CMSA
SPCR
I2CMCR
SPSR
I2CMBU
SP
R
I2C
TP
SSCR
EIE
ACC
P3OE
P1OE
P0OE
T2IF
P3PUN
P1PUN
P0PUN
RLDL
P3WUN
P1WUN
P0WUN
RLDH
SPCR1
SPSR1
PDR1
SSCR1
WDCON
PSW
T2CON
TL2
TH2
DEVICR
IP
P3
PCONE
PWM1CON
PWM0CON
P2OE
RSFLAG
PWM1H
PWM0H
P2PUN
IOSEL
PWM1L
PWM0L
P2WU
AD
CH
IE
P2
SOCN0
P1
SBUF0
EIF
FLASHCTRL
MR
USBADDR USBDATA
TCON
P0
TMOD
SP
TL0
TL1
TH0
TH1
CKCON
DPS
DMAIR
PCON
DPL0
DPH0
DPL1
DPH1
: It means bit-addressab
: It means reserved.
Following are description of S
Rs related to the operation of A8105 System Controller. Detailed descriptions of the remaining
SFRs are including the sections of the datasheet associated with their corresponding system function. The arithmetic section of
the processor performs extensive data manipulation and is comprised of the 8-bit arithmetic logic unit (ALU), an ACC(0xE0)
register, B(0xF0) registe
and
SW(0xD0) register.
PSW (Address:
h)
Address/Name R/W Bit
7 Bit
6 Bit
5 Bit
4 Bit
3 Bit
2 Bit
1 Bit
0
D0h
PSW
Reset
R/W CY
0
AC
0
F0
0
RS1 RS2
OV
F1
0
P
0
0
0
0
Program Status Word register
The ALU performs typical arithmetic operations as: addition, subtraction, multiplication, division and additional operations such
as: increment, decrement, BCD-decimal-add-adjust and compare. Within logic unit are performance: AND, OR, Exclusive OR,
complement and rotation. The Boolean processor performance the bit operations as: set, clear, complement, jump-if-not-set,
jump-if-set-and-clear and move to/from carry.
CY
– Carry flag
AC
– Auxiliary carry
F0
–
General purpose flag 0
RS[1:0]
– Register bank select bits
Aug., 2014, Version 0.6 (Preliminary)
11
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
OV
– Overflow flag
F1
– General purpose flag 1
P
– Parity flag
The PSW contains several bits that reflect the current state of the CPU.
ACC (Address: E0h)
Address/Name R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
E0h
ACC
Reset
R/W
0
0
0
0
0
0
0
0
Accumulator ACC Register
B (Address: F0h)
Address/Name R/W Bit
7 Bit
6 Bit
5 Bi
4 Bit
3 Bit
2 Bit
1 Bit
0
F0h
R/W
B
Reset
0
0
0
0
0
0
0
0
ter
The B register is used during multiply and divide operations.
ther cases may be used as normal SFR.
Sep., 2014, Version 0.6 (Preliminary)
12
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
9.2 RFR Overview
Address /
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
R/W
Name
0x800h
MODE
0x801h
MODEC1
0x802h
—
W
R
W
R
W
R
RESETN FWPRN
FRPRN ADC12RN
CRCF
STRB5
—
XER
STRB3
FPF
WWSE
WWSE
BFCRN
PLLER
STRB2
—
FMT
FMT
—
—
FECF
STRB6
CER
STRB4
TRSR
STRB1
—
FMS
FMS
TRER
STRB0
—
ADCM
ADCM
STRB7
WTR
P_CKO P_IRQ1O
P_IRQ2O
ARSSI
ARSSI
AIF
AIF
DFCD
CD
MODEC2
WWS_AC WWS_AC
0x803h
CALC
0x804h
FIFO I
0x805h
FIFO II
R/W
W
FIFOREV
FEP5
RSSC
FEP4
PSA4
VDC
FEP3
PSA3
VCC
FEP2
PSA2
VBC
FEP1
PSA1
F
C
FEP0
PSA0
7
6
FEP7
FEP6
W
FPM1
FPM0
PSA5
0x806h
RC OSC 1
W
WWS_SL7 WWS_SL6 WWS_SL5 WWS_SL4 WWS_SL3 WW
SL2 WWS_SL1 WWS_SL0
0x807h
RC OSC 2
0x808h
RC OSC 3
0x809h
WWS_AC WWS_AC WWS_AC WWS_AC WWS_AC WWS_AC
WWS_SL9 WWS_SL8
W
5
4
3
2
1
0
W
BBCKS1 BBCKS0
RCOT[2:0]
—
CRCSW BL
RCTS
TSEL
TWOR_E
W
R
W
R
WCKSEL[
:0]
–
MVS[1:0]
RCOC[9:8]
TMRE MAN
ENCAL
ENCAL
MCALS
RC OSC 4
NUMLH[11:8]
MRCT8 —
MRCT9
—
—
0x80Ah
RC OSC 5
NUMLH7 NUMLH6 NUMLH5 NUMLH4 NUMLH3 NUMLH2 NUMLH1 NUMLH0
W
R
MRCT7
RCOC7
MRCT6
RCOC6
MRCT5
RCOC5
M
CT4
COC4
MRCT3
RCOC3
MRCT2
RCOC2
MRCT1
RCOC1
MRCT0
RCOC0
0x80Bh
RC OSC 6
0x80Ch
RC OSC 7
0x80Dh
RC OSC 8
0x80Eh
CKO Pin
0x80Fh
GPIO1 Pin I
0x810h
GPIO2 Pin II
0x811h
Clock
0x812h
Data rate
0x813h
PLL I
0x814h
PLL II
W
W
TGNUM[11:8]
TGNUM[7:0]
WAKEBBI
E
W
DOCKOE CKOS
CKOS2
GIO1S3
GIO2S3
GRC1
SDR5
CHN5
RRC0
IP5
CKOS1
GIO1S2
GIO2S2
GRC0
SDR4
CHN4
CHR3
IP4
CKOS0
GIO1S1
GIO2S1
IDREV
SDR3
CHN3
CHR2
IP3
CKOI
GIO1S0
GIO2S0
CSC0
SDR2
CHN2
CHR1
IP2
INTT1IE
—
W
VGC1
HBW
GRC3
SDR7
CHN7
DBL
VGC0
GIO1I
GIO2I
CGS
_AC
8
W
—
R/W
R/W
R/W
R/W
R/W
GRC2
SDR6
CHN6
RRC1
IP6
XS
SDR1
CHN1
CHR0
IP1
SDR0
CHN0
IP8
0x
5h
PL
IP7
IP0
W
R
W
R
FP15
—
FP7
AC7
FP14
AC14
FP6
FP13
AC13
FP5
FP12
AC12
FP4
FP11
AC11
FP3
FP10
AC10
FP2
FP9
AC9
FP1
AC1
FP8
AC8
FP0
AC0
0x81
h
PLL IV
0x817h
PLL V
AC6
AC5
AC4
AC3
AC2
0x818h
TX I
0x819h
TX II
0x81Ah
Delay I
0x81Bh
Delay II
W
W
W
W
GDR
FD7
TMDE
FD6
TXDI
FD5
TME
FD4
FS
FDP2
FD2
FDP1
FD1
FDP0
FD0
FD3
TDL0
DPR2
WSEL2
DPR1
WSEL1
DPR0
WSEL0
TDL1
PDL2
PDL1
PDL0
AGC_D1 AGC_D0
RS_DLY2 RS_DLY1 RS_DLY0
Sep., 2014, Version 0.6 (Preliminary)
13
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
0x81Ch
RX
W
MSCRC
RXSM1
RXSM0
AFC
RXDI
DMG
BWS
ULS
W
R
W
R
W
R
AGCE
ADC8
PKIS1
—
IFPK
RH7
MIC
MICR
PKIS0
—
VRSEL
RH6
IGC1
IGCR1
PKT1
—
MS
RH5
IGC0
IGCR0
PKT0
—
MSCL4
RH4
MGC1
MGCR1
DCH1
—
MSCL3
RH3
MGC0
MGCR0
DCH0
—
MSCL2
RH2
LGC1
LGCR1
RSAGC1 RSAGC0
VTB1
MSCL1
RH1
LGC0
LGCR0
0x81Dh
RX Gain I
0x81Eh
RX Gain II
VTB0
MSCL0
RH0
0x81Fh
RX Gain III
W
R
W
R
MXD
RL7
RTH7
ADC7
CSS
RL6
RTH6
ADC6
HPLS
RL5
RTH5
ADC5
MHC1
RL4
RTH4
ADC4
MHC0
RL3
RTH3
ADC3
LHC1
RL2
RTH2
ADC2
LHC0
RL1
RTH
ADC1
XADSP
RL0
RTH0
ADC0
0x820h
RX Gain IV
0x821h
RSSI Threshold
0x822h
ADC
0x823h
Code I
0x824h
Code II
0x825h
Code III
W
W
W
W
RSM1
XDS
DCL2
IDL
RSM0
MCS
DCL1
WS6
ERSS
WHTS
DCL0
WS5
FSARS
FECS
ETH2
WS4
SYNCS
CRCS
ETH1
WS3
XADS
PML2
ETH0
WS2
RS
PML1
PMD1
WS1
CDM
PML0
PMD0
WS0
W
R
RNUM0_2 RNUM0_1 RNUM0_0
MFBS
FBCF
M
FB
MFB2
FB2
MFB1
FB1
MFB0
FB0
0x826h
IF Calibration I
—
—
—
RNUM1_
1
FCD1
VCOC1
W
PWORS
TRT2
TRT1
TRT0
MRCKS RNUM1_2
RNUM1_0
0x827h
IF Calibration II
R
W
—
—
—
PKS
—
FC
4
MVCS
FCD3
FCD2
FCD0
VCOC0
0x828h
VCO current
Calibration
0x829h
VCO band
Calibration I
0x82Ah
VCCS
VCOC3
VCOC2
TWORF
DCD1
—
R
W
R
—
DCD0
—
—
DAGS
—
FVCC
DV
—
VCB3
MVBS
VBCF
VCB2
MVB2
VB2
VCB1
MVB1
VB1
VCB0
MVB0
VB0
VCO band
Calibration II
0x82Bh
W
DAMV1
DAMV
VTH2
VTH1
VTH0
VTL2
VTL1
VTL0
W
R
RGS
—
R
1
GV
RGV0
RGV0
PACTL
BDF
BVT2
BVT2
BVT1
BVT1
BVT0
BVT0
BDS
BDS
Battery detect
0x82Ch
TX test
0x82Dh
W
W
W
IFBC1
MT
C0
DCM1
DCV6
TXCS
DCM0
DCV5
PAC1
MLP1
DCV4
PAC0
MLP0
DCV3
TBG2
SLF2
DCV2
TBG1
SLF1
DCV1
TBG0
SLF0
DCV0
Rx DEM test I
0x82Eh
Rx DEM test II
0x82Fh
DCV7
Charge Pump
Current
0x830h
Crys
test
0x8
PLL t
st
0x832h
VCO test I
0x833h
VCO test II
0x834h
IFAT
0x835h
W
CPM3
CPM2
CPM1
CPM0
CPT3
CPT2
CPT1
CPT0
W
W
W
W
W
W
PRS
QDS
QCLIM
PRIC1
DBD
XCC1
PRRC1
TLB0
XCC0
PRRC0
RLB1
XCP1
SDPW
RLB0
RFT1
—
XCP0
NSDO
MGS
RFT0
LIMC
CPS
MDEN
PMPE
PRIC0
TLB1
DEVGD2 DEVGD1 DEVGD0
CHD3
MPDT5
ASMV2
CHD2
MPDT4
ASMV1
CHD1
MPDT3
ASMV0
CHD0
MPDT2
SDMS
RFT3
RFT2
MPDT1
OLM
MPDT0
CPCS
CPH
RF test I
W
R
W
—
—
—
CRS3
CRSR3
STMP
CRS2
CRSR2
STM5
CRS1
CRSR1
STM4
CRS0
CRSR0
STM3
SRS2
SRSR2
STM2
SRS1
SRSR1
STM1
SRS0
SRSR0
STM0
0x836h
RF test II
0x837h
Sep., 2014, Version 0.6 (Preliminary)
14
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
RF test III
0x838h
RF test IV
R
W
R
—
—
—
—
DVI1
—
STMR5
DVI0
—
STMR4
FBG4
FBGR4
CTR4
STMR3
FBG3
FBGR3
CTR3
STMR2
FBG2
FBGR2
CTR2
STMR1
FBG1
FBGR1
CTR1
STMR0
FBG0
FBGR0
CTR0
W
FGC1
FGC0
CTR5
0x839h
RF test V
R
FGCR1
FGCR0
CTRR5
CTRR4
CTRR3
CTRR2
CTRR1
CTRR0
0x83Ah
Channel Index
0x83Bh
W
W
W
W
W
W
—
—
CHIDX[5:0]
CRCINIT2 CRCINIT2 CRCINIT2 CRCINIT2 CRCINIT1 CRCINIT1 CRCINIT1 CRCINIT1
CRC1
0x83Ch
CRC2
0x83Dh
CRC3
0x83Eh
CRC4
0x83Fh
CRC5
0x840h
CRC6
0x841h
3
2
1
0
9
8
7
6
CRCINIT1 CRCINIT1 CRCINIT1 CRCINIT1 CRCINIT1 CRCINIT1
CRCINIT9 CRCIN
T8
5
4
3
2
1
0
CRCINIT7 CRCINIT6 CRCINIT5 CRCINIT4 CRCINIT3 CRCINIT2 CRCINIT
CRCINIT0
CRCINR2 CRCINR2 CRCINR2 CRCINR2 CRCINR1 CRCINR1 CRCINR1 CRCINR1
3
2
1
0
9
8
7
6
CRCINR1 CRCINR1 CRCINR1 CRCINR1 CRCINR1 CRCINR
CRCINR9 CRCINR8
CRCINR7 CRCINIR6 CRCINIR5 CRCINIR4 CRCINIR3 CRCINIR2 CRCINIR1 CRCINIR0
5
4
3
2
1
W
W
R
MDAG7
ADAG7
MDAG6
ADAG6
MDAG5
ADAG5
MDAG4
ADAG4
MDAG3
AD
MDAG2
ADAG2
MDAG1
ADAG1
MDAG0
ADAG0
VCO band
Calibration III
0x842h
VCO deviation
Calibration I
0x843h
VCO deviation
Calibration II
0x844h
W
R
DEVS3
DEVA7
MVDS
ADEV7
DEVS2
DEVA6
DEVM6
ADEV6
DEVS1
DEVA5
DEVM5
ADEV5
DEVS0 DAMR_M
VMTE_M VMS_M
MSEL
DEVA0
DEVM0
ADEV0
DEVA4
DEVM
ADEV4
DEVA3
DEVM3
ADEV3
DEVA2
DEVM2
ADEV2
DEVA1
DEVM1
ADEV1
W
R
VCO deviation
W/R
Calibration III
VMG7
VMG6
VMG5
MG4
VMG3
VMG2
FPS2
VMG1
FPS1
VMG0
FPS0
0x845h
ADC Control
W
AVSEL1
—
AVSEL0 MVSEL1 MVSEL0
RADC
WN0
0x846h
WOT
W
SPSS
GL
GH6
WMODE
CHGL5
CHGH5
WN1
0x847h
Channel Group I
0x848h
Channel Group II
0x849h
R/W CHGL7
R/W CHGH7
CHGL4
CHGH4
CHGL3
CHGH3
CHGL2
CHGH2
CHGL1
CHGH1
CHGL0
CHGH0
Charge Pump
Current II
0x84Ah
VCO modulatio
Delay
W
CPTX3
—
CPTX2
CPTX1
CPTX0
CPRX3
CPRX2
DEVD2
CPRX1
DEVD1
CPRX0
DEVD0
W
W
INTPRC DEVFD2 DEVFD1 DEVFD0
VRPL0
0x84Bh
INTC
VRPL1
VCOSC5 VCOSC4 VCOSC3 VCOSC2 VCOSC1 VCOSC0
W
R
DC_SEL
RXDCS PREDN2
PREDN1 PREDN0 PREUP2 PREUP1 PREUP0
DCOUT[7:0]
0x8
DE
TX_HEAD TX_HEAD TX_HEAD TX_HEAD TX_HEAD TX_HEAD TX_HEAD TX_HEAD
ER15 ER14 ER13 ER12 ER11 ER10
ER9 ER8
RX_HEAD RX_HEAD RX_HEAD RX_HEAD RX_HEAD RX_HEAD RX_HEAD RX_HEAD
ER15 ER14 ER13 ER12 ER11 ER10
ER9 ER8
TX_HEAD TX_HEAD TX_HEAD TX_HEAD TX_HEAD TX_HEAD TX_HEAD TX_HEAD
ER7 ER6 ER5 ER4 ER3 ER2 ER1 ER0
RX_HEAD RX_HEAD RX_HEAD RX_HEAD RX_HEAD RX_HEAD RX_HEAD RX_HEAD
W
R
0x84Dh
BLE_HEADER0
W
0x84Eh
BLE_HEADER1
R
ER7
ER6
ER5
ER4
ER3
ER2
ER1
ER0
0x84Fh
ID0
0x850h
ID1
W/R
W/R
ID31
ID30
ID29
ID28
ID27
ID26
ID25
ID24
ID23
ID22
ID21
ID20
ID19
ID18
ID17
ID16
Sep., 2014, Version 0.6 (Preliminary)
15
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
0x851h
ID2
0x852h
ID3
0x853h
DID0
0x854h
DID1
0x855h
DID2
0x856h
DID3
0x857h
EXT1
0x858h
EXT2
W/R
W/R
R
ID15
ID7
ID14
ID6
ID13
ID5
ID12
ID4
ID11
ID3
ID10
ID2
ID9
ID1
ID8
ID0
DID31
DID23
DID15
DID7
—
DID30
DID22
DID14
DID6
XEC
DID29
DID21
DID13
DID5
DID28
DID20
DID12
DID4
BGS
DID27
DID19
DID11
DID3
DID26
DID18
DID10
DID2
DID25
DID17
DID9
DID1
B
D
DID24
DID16
DID8
R
R
R
DID0
W/R
W
BREV
VTRB1
CGC
LIMB
VMRB3
IWC
ADCCS
VMRB2
L
REGR
VMRB0
VCSW
VTRB3
—
VTRB2
IFAS
VTRB0
IWA
VMRB1
VCS
0x859h
EXT3
W
W
R
W
R
BUFS
—
ADCIE
CKS
—
—
—
—
—
MODE
MODE
—
MVS2
MVS2
AD
AD
MVS1
MVS1
ADCYC
ADC10
MVS0
MVS0
ENADC
ADC9
ADCE
ADCE
DTMP
ADC8
0x85Ah
ADCCTL
0x85Bh
ADCAVG1
MVADC11 MVADC10
MVADC9 MVADC8
0x85Ch
ADCAVG2
0x85Dh
R
R
MVADC7 MVADC6 MVADC5 MVADC4 MVADC3 MVADC2 MVADC1 MVADC0
ADC7
ADC6
ADC5
ADC
ADC3
ADC2
ADC1
ADC0
ADCAVG3
0x85Eh
TMRITV1
0x85Fh
TMRITV2
0x860h
TMRWOR0
0x861h
TMRWOR1
W
W
W
W
MR_ITV[15:8]
TMR_ITV[7:0]
—
TMRWORS
—
–
TMR_OFS4 TMR_OFS3 TMR_OFS2 TMR_OFS1 TMR_OFS0
W
R
TMRON
—
T
IE
TMRIF
TMRCOR TMRWOR
TMRCKS1 TMRCKS0
TMR_CE
0x862h
TMRCTL
0x863h
PWRCTL0
0x864h
PWRCTL1
0x865h
PWRCTL2
MRIE
TMRIF
—
—
TMRCKS1 TMRCKS0
TMR_CE
W
W
CBG2
EBOD
G1
ENAV
—
CBG0
QDSA
—
PDNS
STA
ENDL2
CEL
ENDL1
SVREF
RGC0
ENDL0
CELA
ENDV
RCR1
QDSD
RCR0
W
P3PUNIE
RGC1
RCHC
0x866h
PWRCTL3
0x867h
PWRCTL4
0x
8h
W
MR[7:0] (analog)
MS[7:0] (analog)
dc_shift[7:0]
W
W
DC
0x86
h
TX5DY
0x87Ch
ACKRT
W/R
W
HDRSW
—
EARTS
EACKS
TX_5DLY[4:0]
—
LL_TIME_OUT[5:0]
Legend: – = unimplemented
Sep., 2014, Version 0.6 (Preliminary)
16
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
9.2.1 Mode Register (Address: 0x800h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
W
R
RESETN
FWPRN
FECF
—
FRPRN
CRCF
—
ADC12RN
—
XER
—
BFCRN
PLLER
—
—
TRSR
—
—
TRER
—
MODE
Reset
—
—
CER
—
RESETN: Write to this register by 0x00 to issue reset command, then it is auto clear
FWPRN: FIFO Write Point Software Reset.
FRPRN: FIFO Read Point Software Reset.
ADC12RN: 12-bits ADC Software Reset.
BFCRN: IF Filter Bank Calibration Software Reset.
FECF: FEC flag.
[0]:
FEC pass.
[1]:
FEC error.
CRCF: CRC flag.
[0]:
CRC pass.
[1]:
CRC error.
CER: RF chip enable status.
[0]:
RF chip is disabled.
[1]:
RF chip is enabled.
XER: Internal crystal oscillator enabled status.
[0]:
Crystal oscillator is disabled.
[1]:
Crystal oscillator is enabled.
PLLER: PLL enabled status.
[0]:
PLL is disabled.
[1]:
PLL is enabled.
TRSR: TRX Status Register.
[0]:
RX state.
[1]:
TX state.
Serviceable if TRER=1 (TRX is enable).
TRER: TRX state enabled status.
[0]:
TRX is disabled.
[1]:
TRX is ena
9.2.2 Mode Control Regis
er 1 (Address: 0x801h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
W
R
STRB7
STRB6
STRB5
STRB4
STRB3
FSYNC
0
STRB2
STRB1
STRB0
MODEC1
Reset
ARCWTR P_CKO P_IRQ1O
P_IRQ2O
1
0
1
0
0
0
0
STRB[7:0]: St
obe
ommand register.
[80]:
Sle
p mode
[90]:
Idle
e.
[A0]:
Stan
by mode.
[B0]:
PLL mode.
[C0]:
TX mode.
[D0]:
RX mode.
Reverse for other settings.
ARCWTR: Read ARCWTR output signal.
P_CKO: Read P_CKO pin output signal.
P_IRQ1O: Read P_IRQ1O pin output signal.
P_IRQ2O: Read P_IRQ2O pin output signal.
Sep., 2014, Version 0.6 (Preliminary)
17
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
FSYNC: Read Frame sync ok output signal.
9.2.3 Mode Control Register 2 (Address: 0x802h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
W
R
ARSSI
ARSSI
0
AIF
AIF
0
DFCD
CD
WWSE
WWSE
0
FMT
FMT
0
FMS
FMS
0
ADCM
ADCM
0
MODEC2
Reset
0
ARSSI: Auto RSSI measurement while entering RX mode.
[0]:
Disable.
[1]:
Enable.
AIF (Auto IF Offset): RF LO frequency will auto offset one IF frequency while entering RX mode.
[0]:
Disable.
[1]:
Enable.
CD / DFCD:
DFCD (Data Filter by CD):
The received package will be filtered out if Carrier Detector sign
l is inactive.
[0]:
Disable.
[1]:
Enable.
CD (Read): Carrier detector signal.
[0]:
Input power below threshold.
[1]:
Input power above threshold.
WWSE: Reserved for internal usage only. Shall be set to [0].
FMT: Reserved for internal usage only. Shall be set to [0].
FMS: Direct/FIFO mode select.
[0]:
Direct mode.
[1]:
FIFO mode.
ADCM: ADC measurement enable (Auto clear when do
[0]:
Disable measurement or measurement finished.
[1]:
En
measurement.
ADCM
A8105 @ Standby mode
A8105 @ RX mode
[0] Disable
ADC
D
i
s
a
b
l
e
A
D
C
Measure temperature, external A
alog D
gital
Convert
[1]
Measure RSSI, carrier detect
9.2.4 Calibration Control Regist
Address: 0x803h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
WWS_AC WWS_AC
W
R
RSSC
VDC
VCC
VBC
FBC
FIFOREV
7
6
CALC
Reset
—
—
—
0
0
0
0
0
WWS_AC [7:6]
Se
9.2.8
FIFOREV
FO reverse enable.
[0]:
Disabl
[1]:
Enable
RSSC: RSSI calibration enable (Auto clear when done).
[0]:
Disable.
[1]:
Enable.
VCC: VCO Current calibration enable (Auto clear when done).
[0]:
Disable.
[1]:
Enable.
VBC: VCO Bank calibration enable (Auto clear when done).
[0]:
Disable.
[1]:
Enable.
VDC: VCO Deviation calibration enable (Auto clear when done).
[0]:
Disable.
[1]:
Enable.
Sep., 2014, Version 0.6 (Preliminary)
18
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
FBC: IF Filter Bank calibration enable (Auto clear when done).
[0]:
Disable.
[1]:
Enable.
9.2.5 FIFO Register I (Address: 0x804h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
FIFO I
Reset
W
FEP7
0
FEP6
0
FEP5
1
FEP4
1
FEP3
1
FEP2
1
FEP1
1
FEP0
1
FEP [7:0]: FIFO End Pointer for TX FIFO and Rx FIFO.
Refer to chapter chapter 21 for details.
9.2.6 FIFO Register II (Address: 0x805h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
FIFO II
Reset
W
FPM1
0
FPM0
1
PSA5
0
PSA4
0
PSA3
0
PSA2
0
PSA1
0
PSA0
0
FPM [1:0]: FIFO Pointer Margin
PSA [5:0]: Used for Segment FIFO.
Refer to chapter 21 for details.
9.2.7 RC OSC Register I (Address: 0x806h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit
Bit 3
Bit 2
Bit 1
Bit 0
RC OSC I
Reset
W
WWS_SL7 WWS_SL6 WWS_SL5 W
S_SL4 WWS_SL3 WWS_SL2 WWS_SL1 WWS_SL0
0
0
0
0
0
0
0
0
WWS_SL [9:0]: 10-bits WWS_SL Timer for TWWS Functio
(7.8ms ~ 7.99s).
WWS_SL [9:0] are from address (0x806h) and (0x8
7h).
9.2.8 RC OSC Register II (Address: 0x8
7h)
Name
R/W
Bit 7
it 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
RC OSC II
Reset
W
WWS_SL9
WS
SL8 WWS_AC5 WWS_AC4 WWS_AC3 WWS_AC2 WWS_AC1 WWS_AC0
0
0
0
0
0
0
0
0
WWS_SL [9:0]: 10-bits WWS_SL Timer for TWWS Function (7.8ms ~ 7.99s).
WWS_SL [9:0] are from addre
s (0x
06h) and (0x807h).
WWS_AC [8:0]: 9-bits WWS_AC Timer for TWWS Function (244us ~ 15.6ms).
9.2.9 RC OSC
gister III (Address: 0x808h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
RC
SC III
R
W
BBCKS1
0
BBCKS0
0
—
—
CRCSW
—
BLE_ON
—
RCTS
1
TSEL
0
TWWS_E
1
BBCKS [1:0]: Clock select for internal digital block
[00]: F
SYCK
/ 8.
[01]:
F
SYCK
/ 16.
[10]:
F
SYCK
/ 32.
[11]:
F
SYCK
/ 64.
F
SYCK
:System clock. Should be set to 8MHz.
CRCSW
: CRC select (BLE_ON=0).
[0]:
Select CRC-16, CCITT.
[1]:
Select CRC-24 (BLE).
BLE_ON: Bluetooth Low-Energy Mode enable.
[0]:
Disable.
[1]:
Enable.
RCTS: Internal / External 32.768k Hz oscillator selection.
[0]:
Internal.
[1]:
External.
Sep., 2014, Version 0.6 (Preliminary)
19
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
TSEL: Timer select for TWWS function.
[0]:
Use WWS_AC.
[1]:
Use WWS_SL.
TWWS_E: Enable TWWS function.
[0]:
Disable.
[1]:
Enable.
9.2.10 RC OSC Register IV (Address: 0x809h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
W
R
RCOT2
RCOT1
RCOT0
WCKSEL1 WCKSEL0
MVS1
RCOC9
0
MVS0
RCOC
0
NCAL
ENCAL
0
RC OSC IV
Reset
NUMLH11 NUMLH10
NUMLH9
— — —
NUMLH8
0
—
0
RCOT[2:0]: RCOSC current select for RC oscillator calibration.
WSEL [1:0]: Clock select for internal RC oscillator Calibration
[00]
: 16 MHz
[01]
: 8 MHz
[10]
: 4 MHz
[11]
: 2MHz
ENCAL: WOR calibration enable.
[0]:
Disable
[1]:
Enable.
RCOC [9:0]: WOR Calibration value.
NUMLH[11:0]: WOR calibration latch number.
9.2.11 RC OSC Register V (Address: 0x80Ah)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
W
R
MRCT9
NUMLH7
0
MRCT8
NUM
H6
0
—
NUMLH5
—
—
NUMLH4
—
—
NUMLH3
—
TMRE
NUMLH2
—
MAN
NUMLH1
0
MCALS
NUMLH0
0
RC OSC V
Reset
MRCT[9:0]: Manual RC-OSC calibr
value setting.
MAN: Enable Manual RC-OSC Cali
n.
[0]
: Auto
[1]:
Manual.
TMRE: RC-oscillator e
able.
[0]:
Disable.
[1]:
Enable
MCALS: Enable
onti
uous RC-OSC Calibration.
[0]:
Continuou
mo
e.
[1]:
Single mode.
NUMLH[
1:0]: RC-OSC calibration latch number.
9.2.12 RC OSC Register VI (Address: 0x80Bh)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
W
R
MRCT7
RCOC7
0
MRCT6
RCOC6
0
MRCT5
RCOC5
0
MRCT4
RCOC4
0
MRCT3
RCOC3
0
MRCT2
RCOC2
0
MRCT1
RCOC1
0
MRCT0
RCOC0
0
RC OSC VI
Reset
MRCT [9:0]: Manual RC-OSC calibration value setting.
RCOC [9:0]: RC-OSC calibration value.
Sep., 2014, Version 0.6 (Preliminary)
20
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
9.2.13 RC
OSC Register VII (Address: 0x80Ch)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
W
—
—
—
—
TGNUM11 TGNUM10
TGNUM9
TGNUM8
0
RCOSC7
Reset
—
—
—
—
0
0
0
TGNUM[11:0]: Target Number for RC OSC Calibration.
9.2.14 RC
OSC Register VIII (Address: 0x80Dh)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
W
TGNUM7
0
TGNUM6
0
TGNUM5
0
TGNUM4
0
TGNUM3
0
TGNUM2
0
TGNU
0
TGNUM0
0
RCOSC8
Reset
TGNUM[11:0]: Target Number for RC OSC Calibration.
9.2.15 CKO Pin Control Register (Address: 0x80Eh)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
WAKEBBI
CKO Pin Control
Reset
W
ECKOE
1
CKOS3
0
CKOS2
1
CKOS1
1
CKOS0
CKOI
0
INTT1IE
—
E
—
ECKOE: External Clock Output Enable for CKOS [3:0]= [0100] ~ [0111].
[0]:
Disable.
[1]:
Enable.
CKOS[3:0]: CKO pin output select.
[0000]:
DCK (TX data clock).
[0001]:
RCK (RX recovery clock).
[0010]:
FPF (FIFO pointer flag).
[0011]:
EOP, EOVBC, EOFBC, EOADC, EOVCC, OKADC,
C_OK (Internal usage only).
[0100]:
External clock output= F
SYCK
.
[0101]:
External clock output / 2= F
SYCK
/ 2.
[0110]:
External clock output / 4= F
SYCK
/ 4.
[0111]:
External clock output / 8= F
SYCK
/ 8.
[1000]:
WCK.(4Khz)
[1001]:
PF8M(8MHz)
[1010]:
TMRCK(32Khz)
[1011]:
SYCK(8Mhz)
[1100]:
TMRCK_OVF(Timer c
ock)
CKOI: CKO pin output signal invert.
[0]:
Non-inverted outpu
[1]:
Inverted output.
WAKEBBIE: Wa
BB interrupt enable.
[0]:
Disable.
[1]:
Enable.
INTT1IE: ARCWTR interrupt enable.
[0]:
Disa
]:
Enable.
9.2.16 GIO1 Pin Control Register I (Address: 0x80Fh)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
GPIO1 Pin I
Reset
W
VGC1
0
VGC0
0
GIO1S3
0
GIO1S2
0
GIO1S1
0
GIO1S0
0
GIO1I
0
—
—
GIO1S [3:0]: GIO1 pin function select.
GIO1S [3:0]
[0000]
TX state
RX state
WTR (Wait until TX or RX finished)
[0001]
EOAC (end of access code)
TMEO or TMDEO (TX
modulation enable)
FSYNC (frame sync)
CD (carrier detect)
[0010]
Sep., 2014, Version 0.6 (Preliminary)
21
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
[0011]
[0100]
[0101]
[0110]
[0111]
[1000]
[1001]
[1010]
[1011]
[1100]
[1101]
[1110]
[1111]
Preamble Detect Output (PMDO)
MCU wakeup signal (TWWS)
In phase demodulator input (DMII)
Reserved
TRXD In/Out (Direct mode)
RXD (Direct mode)
TXD (Direct mode)
In phase demodulator external input (EXDI0)
External FSYNC input in RX direct mode
INC
PDN_RX
INT5
Reserved
GIO1I: GIO1 pin output signal invert.
[0]:
Non-inverted output.
[1]:
Inverted output.
9.2.17 GIO2 Pin Control Register II (Address: 0x810h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
WWS_AC
GIO2 Pin Control II
Reset
W
HBW
0
GIO2S3
0
GIO2S2
1
G
0
GIO2S0
0
GIO2I
0
—
—
8
—
WWS_AC8: See 9.2.8
HBW: IF bandwidth setting.
BWS HBW IF(Hz)
BW
1
1
0
0
1
0
1
0
2000 1200
2000 2400
1000 1200
1000 1200
GIO2S [3:0]: GIO2 pin function se
GIO2S
[0000]
TX state
ARCWTR (Wai
until TX or RX finished)
RX state
[0001]
EOAC (end of
ccess code)
TMEO or TMDEO(TX
modulati
n ena
le)
FSYNC (frame sync)
[0010]
CD (carrier detect)
[0011]
[0100]
[0101]
[0110]
[011
[1000
[1001]
[1010]
[1011]
[1100]
[1101]
[1110]
[1111]
Preamble Detect Output (PMDO)
M
wa
eup signal (TWWS)
Quadr
ture phase demodulator input (DMIQ)
es
ved
TRXD In/Out (Direct mode)
RXD (Direct mode)
TXD (Direct mode)
Quadrature phase demodulator external input (EXDI1)
External FSYNC input in RX direct mode
DEC
PDN_TX
Reserved
Reserved
GIO2I: GIO2 pin output signal invert.
[0]:
Non-inverted output.
[1]:
Inverted output.
Sep., 2014, Version 0.6 (Preliminary)
22
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
9.2.18 Clock Register (Address: 0x811h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
Clock
Reset
R/W
GRC3
1
GRC2
1
GRC1
1
GRC0
1
CSC
0
CGS
1
XS
1
IDREV
0
GRC [3:0]: Clock generation reference counter.
GRC is used to get 2 MHz Clock Generator Reference (F
CGR
) for internal usage.
Clock generation reference = F
CSCK
/ (GRC+1). Maximum divide ratio is 16.
F
CSCK
is A8105
’
s master clock.
IDREV: ID reverse enable.
[0]:
Disable.
[1]:
Enable.
CSC: system clock F
SYCK
divider select.
[0]:
F
CSCK
.
[1]:
F
CSCK
/ 2.
CGS: Clock generator enable.
[0]:
Disable.
[1]:
Enable. CGS shall be set to [1].
XS: Crystal oscillator select.
[0]:
Use external clock.
[1]:
Use external crystal.
Master clock frequency
BWS = 0
BWS = 1
CGS = 0
Crystal frequency
crystal frequency
CGS = 1
32 MHz
64 MH
9.2.19 Data Rate Register (Address: 0x812h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
Data Rate
Reset
R/W
SDR7
0
SDR6
0
SDR5
0
SDR4
0
SDR3
0
SDR2
0
SDR1
0
SDR0
0
SDR [7:0]: Data rate division selection.
Data rate = F
CSCK
/ [32*(SDR [7:0]+1)].
9.2.20 PLL Register I (Address
3h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
PLL I
R/W
CHN7
0
CHN6
0
CHN5
0
CHN4
0
CHN3
0
CHN2
0
CHN1
0
CHN0
0
Reset
CHN [7:0]: LO channel number select.
9.2.21 PLL
egi
ter II (Address: 0x814h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
R
DBL
DBL
0
RRC1
RRC1
0
RRC0
RRC0
0
CHR3
CHR3
0
CHR2
CHR2
1
CHR1
CHR1
1
CHR0
CHR0
1
IP8
BIP8
0
P
II
Reset
W
DBL: Crystal frequency doubler selection.
[0]:
Disable. F
XREF
= F
XTAL
[1]:
Enable. F
XREF
=2 * F
XTAL
.
.
RRC [1:0]: RF PLL reference counter setting.
CHR [3:0]: PLL channel step setting.
IP [8:0]: LO frequency integer part value.
IP [8:0] are from address (0x812h) and (0x813h),
Sep., 2014, Version 0.6 (Preliminary)
23
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
9.2.22 PLL Register III (Address: 0x815h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
W
R
BIP7
IP7
0
BIP6
IP6
1
BIP5
IP5
0
BIP4
IP4
0
BIP3
IP3
1
BIP2
IP2
0
BIP1
IP1
1
BIP0
IP0
1
PLL III
Reset
IP [8:0]: LO frequency integer part value.
IP [8:0] are from address (0x812h) and (0x813h),
BIP [8:0]: LO base frequency integer part setting.
BIP [8:0] are from address (0x812h) and (0x813h),
9.2.23 PLL Register IV (Address: 0x816h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
B
2
Bit 1
Bit 0
W
R
FP15
FP14
FP13
FP12
FP11
FP10
FP9
FP8
AC8/FP8
0
PLL IV
Reset
–/FP15 AC14/FP14
AC13/FP13 AC12/P12 AC11/
FP1
AC10/FP10 AC9/FP9
0
0
0
0
0
0
FP [15:0]: LO base frequency fractional part setting.
FP [15:0] are from address (0x816h) and (0x817h),
AC [14:0] (Read): Auto Frequency compensation value (if AFC (0
81Ah) =1).
FP [15:0] (Read): LO frequency fractional part setting.
9.2.24 PLL Register V (Address: 0x817h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
W
R
FP7
AC7/FP7
0
FP
AC6/F
6
0
FP5
AC5/FP5
0
FP4
AC4/FP4
0
FP3
AC3/FP3
0
FP2
AC2/FP2
0
FP1
AC1/FP1
1
FP0
AC0/FP0
1
PLL V
Reset
FP [15:0]: LO base frequency frac
art setting.
FP [15:0] are from address (0x814h) a
0x815h),
AC [14:0] (Read): Auto Frequ
ncy compensation value (if AFC (0x81Ah) =1).
FP [15:0] (Read): LO fr
quency fractional part setting.
9.2.25 TX R
gister I (Address: 0x818h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
W
GDR
0
TMDE
1
TXDI
0
TME
1
FS
0
FDP2
1
FDP1
1
FDP0
0
Re
et
GDR: Gaussian Filter Over Sampling Rate Select.
[0]:
BT= 1.
[1]:
BT= 0.5
TMDE: TX Modulation Enable for VCO Modulation.
[0]:
Disable.
[1]:
Enable.
TXDI: TX data invert. Recommend TXDI = [0].
[0]:
Non-invert.
[1]:
Invert.
TME: TX modulation enable.
[0]:
Disable.
[1]:
Enable.
Sep., 2014, Version 0.6 (Preliminary)
24
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
FS: Filter select.
The filter shape is gaussian filter.
[0]:
disable.
[1]:
enable.
FDP [2:0]: Frequency deviation power setting. Refer to control register (15h).
9.2.26 TX Register II (Address: 0x819h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
TX II
W
FD7
0
FD6
0
FD5
1
FD4
0
FD3
1
FD2
1
FD1
1
FD0
1
Reset
FD [7:0]: Frequency deviation setting.
FDEV
= F
PFD
/2**16*FD* 2**(FDP-1).
Where F
PFD
= F
XTAL
* (DBL+1) / (RRC [1:0]+1), PLL comparison frequency.
9.2.27 Delay Register I (Address: 0x81Ah)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
Delay
Reset
W
DPR2
0
DPR1
0
DPR0
0
TDL1
1
TD
PDL2
0
PDL1
1
PDL0
0
DPR [2:0]: Delay scaling setting.
Recommend DPR = [000].
TDL [1:0]: Delay for TX data out after PDN_TX enable.
Delay= 20 * (TDL [1:0]+1)*(DPR [2:0]+1) + (TX_5DLY [4:0]+1) us.
PDL [2:0]: Delay for TX settling.
Delay= 20 * (PDL [2:0]+1)*(DPR [2:0]+1) us.
9.2.28 Delay Register II (Address: 0x81Bh)
Name
R/W
Bit 7
Bit
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
Delay
Reset
W
WSEL2
0
EL
WSEL0
0
AGC_D1
0
AGC_D0
0
RS_DLY2 RS_DLY1 RS_DLY0
0
0
1
WSEL[2:0]: XTAL settling delay se
200us ~ 2.5ms). Recommend WSEL = [010].
[000]:
200us.
[001]:
400us.
[010]:
600us.
[011]:
800us.
[100]:
1ms.
[101]:
1.5ms.
[
10]:
ms.
[111]:
2.5ms.
AGC_D [1:0]: RSSI cal
bration switching time (10us ~ 40us
)
. Recommend AGC_D = [00].
[00]:
10us.
[01]:
20us
[10]:
30us.
[11]:
40us.
RS_DLY [2:0]
RS
I measurement delay (10us ~ 80us
).
Recommend RS_DLY = [001].
[000]:
10us.
[0
1]:
0us.
[010]:
30us.
[011]:
40us.
[100]:
50
.
[101]:
60us.
[110]:
70us.
[111]:
80us.
9.2.29 RX Register (Address: 0x81Ch)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
RX
W
MSCRC
0
RXSM1
1
RXSM0
0
AFC
0
RXDI
0
DMG
0
BWS
1
ULS
0
Reset
MSCRC: Mask CRC (CRC Data Filtering Enable).
[0]:
Disable.
[1]:
Enable.
RXSM [1:0]: Reserved for internal usage onl
y
.
S
hall be set to [10].
AFC: Auto Frequency compensation select.
[0]:
Manual compensation.
[1]:
Auto compensation.
Sep., 2014, Version 0.6 (Preliminary)
25
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
RXDI: RX data output invert. Recommend RXDI = [0].
[0]:
Non-inverted output.
[1]:
Inverted output.
DMG: Reserved for internal usage onl
y
.
S
hall be set to [0].
BWS: IF Bandwidth selection.
HBW: IF bandwidth setting.
BWS HBW IF(Hz)
BW
1
1
0
0
1
0
1
0
2000 1200
2000 2400
1000 1200
1000 1200
ULS: RX Up/Low side band select.
[0]:
Up side band,
[1]:
Low side band.
9.2.30 RX Gain Register I (Address: 0x81Dh)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
B
Bit 2
Bit 1
Bit 0
W
R
AGCE
ADC8
0
MIC
MICR
1
IGC1
IGCR1
1
IGC0
IGCR
MGC1
MGCR1
1
MGC0
MGCR0
1
LGC1
LGCR1
1
LGC0
LGCR0
1
RX Gain I
Reset
AGCE: Auto Front end Gain Control Select.
[0]:
Disable.
[1]:
Enable.
IGC [1:0]: IFA Attenuation Select.
[00]:
0dB.
[01]:
6dB.
[10]:
12dB.
[11]:
18dB.
MGC [1:0]: Mixer Gain Attenuation select.
[00]:
0dB.
[01]:
6dB.
[10]:
12dB.
[11]:
18dB.
LGC [1:0]: LNA Gain Attenuation sel
ct.
[00]:
6dB.
[01]:
12dB.
[10]:
18dB.
[1
B.
9.2.31 RX Gain Register II (Address: 0x81Eh)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
W
PKIS1
PKIS0
PKT1
PKT0
DCH1
DCH0
RSAGC1
RSAGC0
RX Gain II
Reset
—
0
—
0
—
0
—
1
—
0
—
0
VT1
0
VT0
0
PKIS[1:0]: AG
P
k Detect Current Select. Recommend PKIS[1:0[ = [00].
PKT[1:0]
O Peak Detect Current Select. Recommend PKT [1:0] = [01].
DCH [1:0]: AGC Hold setting.
[00]: Hold by Preamble OK.
[01]:
Hold by SYNC.
[10]:
No Hold.
[11]:
No Hold.
VT[1:0]: AGC comparator output.
RH [7:0]: Reserved for internal usage onl
y
.
RSAGC [1:0]: AGC clock select.
[00]:
IF/4
Sep., 2014, Version 0.6 (Preliminary)
26
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
[01]:
IF/2
[10]:
IF
[11]:
2*IF
Where IF is 1Mhz for BWS=0, and 2Mhz for BWS=1.
9.2.32 RX Gain Register III (Address: 0x81Fh)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
W
R
IFPK
RH7
0
VRSEL
RH6
0
MS
RH5
0
MSCL4
RH4
0
MSCL3
RH3
0
MSCL2
RH2
0
MSCL1
RH1
0
MSCL0
RH0
0
RX Gain III
Reset
IFPK: AGC Amplifier Current Select
.
Recommend IFPK = [0].
VRSEL: ADC reading select.
[0]: Normal ADC. [1]: RSSI ADC (with AGC turn on).
MS: AGC Manual scale select.
[0]:
RL-RH(Auto).
[1]:
MSCL(Manual).
MSCL[4:0]: AGC Manual Scale setting.
RH [7:0]: RSSI Calibration High Threshold.
9.2.33 RX Gain Register IV (Address: 0x820h)
Name
R/W
Bit 7
Bit 6
Bit 5
it 4
Bit 3
Bit 2
Bit 1
Bit 0
W
R
MXD
RL7
0
CSS
RL6
0
HPLS
RL5
1
MHC1
RL4
0
MHC0
RL3
1
LHC1
RL2
1
LHC0
RL1
1
XADSP
RL0
0
RX Gain III
Reset
MXD: Reserved for internal usage only. Shall be s
t to [0].
CSS: RX demodulation carrier detect select.
[0]:
Deselect.
[1]:
select.
HPLS: High Power LNA Gain Sele
ommend HPLS = [0].
[0]:
LGC is set to 6dB when in TX Mo
]:
LGC is set to LGM[1:0].
MHC [1:0]: Reserved for inte
nal u
age onl
y
.
S
hall be set to [10].
LHC [1:0]: Reserved for inte
nal usage onl
y
.
S
hall be set to [10].
XADS: ADC inpu
sign
l select.
[0]:
Convert intern
l temperature or RSS signal.
[1]:
Convert external voltage,
RL [7:0]: RSSI Calibration Low Threshold value.
9.2.34 RSSI Threshold Register (Address: 0x821h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
W
R
RTH7
ADC7
0
RTH6
ADC6
0
RTH5
ADC5
0
RTH4
ADC4
0
RTH3
ADC3
0
RTH2
ADC2
0
RTH1
ADC1
0
RTH0
ADC0
0
RSSI Threshold
Reset
RTH [7:0]: Carrier detect threshold.
ADC [8:0]: ADC output value of temperature, RSSI or external voltage measurement (read only).
ADC [8:0] are located at address 0x81D and 0x821h.
For normal ADC measurement with VRSEL=0 (in 0x81Fh), which include external voltage, Temp and RSSI with AGC off
measurement, ADC [8] is zero. ADC input voltage= 1.2 * ADC [8:0] / 256 V.
Sep., 2014, Version 0.6 (Preliminary)
27
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
9.2.35 ADC Control Register (Address: 0x822h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
ADC Control
Reset
W
RSM1
0
RSM0
1
ERSS
0
FSARS
1
SYNCS
0
XADS
0
RSS
1
CDM
1
RSM [1:0]: RSSI margin = RTH
–
RTL. Recommend RSM = [11].
[00]:
5.
[01]:
10.
[10]:
15.
[11]:
20.
ERSS: end enable for RSSI measurement
[0]:
RSSI measurement continues until leave off RX mode.
[1]:
RSSI measurement will end when carrier detected and ID code word received.
FSARS: ADC clock select. Recommend FSARS = [0].
[0]:
2MHz.
[1]:
4MHz.
SYNCS: Sync word detect select.
[1]:
sync word.
[0]:
preamble
XADS: ADC input signal select.
[0]:
Convert internal temperature or RSS signal.
[1]:
Convert external volta
e,
RSS: Temperature/RSSI measurement select.
[0]:
Temperature measurement.
[1]:
RSSI or carrier-detect measuremen
CDM: RSSI measurement mode.
[0]:
Single mode.
[1]:
Continuous mode.
9.2.36 Code Register I (Address: 0x823h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
Code I
Reset
W
XDS
0
MCS
0
WHTS
0
FECS
0
CRCS
0
PML2
0
PML1
1
PML0
1
XDS: VCO Modulation Data Samplin
Clock selection.
[0]:
8x over-sampling Clock.
[1]:
X
Clock.
MCS: Manchester Code Ena
le.
[0]:
Disable.
[1]:
Enable.
WHTS: Data whitening (Data Encryption) select.
[0]:
Disable.
[1]:
En
ble.
FECS: FEC sele
.
[0]:
Disable.
[1]:
Enable.
CRCS: CRC sel
ct.
[0]:
Disa
1]:
Enable.
PML [2:0]: Preamble length select. Recommend PML= [11].
[000]:
1 byte.
[001]:
2 bytes.
[010]:
3 bytes.
[011]:
4 bytes.
[100]:
5byts.
[101]
: 6bytes.
[110]:
7bytes.
[111]:
8bytes
9.2.37 Code Register II (Address: 0x824h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
Code II
Reset
W
DCL2
1
DCL1
1
DCL0
1
ETH2
0
ETH1
0
ETH0
1
PMD1
1
PMD0
1
DCL [2:0]: Demodulator DC estimation average mode. Refer to DCM (0x82Bh) for details.
Sep., 2014, Version 0.6 (Preliminary)
28
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
DCL [2]: payload average mode.
[0]:
128 bits average.
[1]:
256 bits average.
DCL [1]: For average and hold mode.
[0]:
32 bits average.
[1]:
64 bits average.
DCL [0]: Preamble detection delay. Count from preamble detected signal. Recommend DCL0 = [1].
[0]:
4 bits for DCL1=0, 8 bits for DCL1=1.
[1]:
8 bits for DCL1=0, 16 bits for DCL1=1.
ETH [2:0]: ID code error tolerance. Recommend ETH = [01].
[000]~[111]:
0~7 bit.
PMD [1:0]: Preamble pattern detection length. Recommend PMD = [10].
[00]:
0bit.
[01]:
4bits.
[10]:
8bits.
[11]:
16bits.
9.2.38 Code Register III (Address: 0x825h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
B
t 2
Bit 1
Bit 0
Code III
Reset
W
IDL
1
WS6
0
WS5
1
WS4
0
WS3
1
WS
0
WS1
1
WS0
0
IDL: ID code length select. Recommend IDL= [1].
[0]:
2 bytes.
[1]:
4 bytes.
WS [6:0]: Data Whitening seed setting (data encryption key).
9.2.39 IF Calibration Register I (Address: 0x826h)
Name
R/W
Bit 7
Bit 6
Bit 5
B
t 4
Bit 3
Bit 2
Bit 1
Bit 0
W
R
RNUM0_2 RNUM0_1 RNUM
MFBS
FBCF
0
MFB3
FB3
0
MFB2
FB2
1
MFB1
FB1
1
MFB0
FB0
0
IF Calibration I
Reset
—
1
—
0
—
0
RNUM0[2:0]: sync word clock recovery ma
ual setting.
MFBS: IF filter calibration value select.
co
mend MFBS = [0].
[0]:
Auto calibration value.
[1]:
Manua
libration value.
MFB [3:0]: IF filter manual calibrat
ue.
FBCF: IF filter auto calibrati
n flag
[0]:
Pass.
[1]:
Fail.
FB [3:0]: IF filter cal
bra
ion value.
MFBS= 0: Auto c
brat
n value (AFB),
MFBS= 1: Manual ca
bration value (MFB).
9.2.40 IF
libration Register II (Address: 0x827h)
Na
e
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
W
R
PWORS
TRT2
TRT1
TRT0
FCD4
1
MRCKS
FCD3
0
RNUM1_2 RNUM1_1
RNUM1_0
IF Calibration II
Reset
—
0
—
0
—
1
FCD2
0
FCD1
0
FCD0
0
PWORS: TX high power setting.
[0]:
Disable.
[1]:
Enable.
TRT [2:0]: TX Ramp down discharge current select. Recommand value=[000]
MRCKS: Preamble detect and sync detect manual setting. [1]: manual
Sep., 2014, Version 0.6 (Preliminary)
29
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
RNUM1[2:0]: sync word clock recovery manual setting.
FCD [4:0]: IF filter calibration deviation from goal.
9.2.41 VCO current Calibration Register (Address: 0x828h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
W
R
—
TWORF
0
PKS
—
VCCS
MVCS
FVCC
0
VCOC3
VCB3
1
VCOC2
VCB2
0
VCOC1
VCB1
0
VCOC0
VCB0
0
VCO current
Calibration
—
0
Reset
0
PKS: VCO Current Calibration Mode Select. Recommend PKS = [0].
VCCS: Reserved for internal usage onl
y
.
S
hall be set [0].
MVCS: VCO current calibration value select. Recommend MVCS = [0].
[0]:
Auto calibration value.
[1]:
Manual calibration value.
VCOC [3:0]: VCO current manual calibration value.
TWORF: TWOR interrupt flag.
FVCC: VCO current auto calibration flag.
[0]:
Pass.
[1]:
Fail.
VCB [3:0]: VCO current calibration value.
MVCS= 0: Auto calibration value (VCB).
MVCS= 1: Manual calibration value (VCOC).
9.2.42 VCO Single band Calibration Register I (Add
s: 0x829h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
W
R
DCD1
DCD0
DAGS
PDV
—
MVBS
VBCF
0
MVB2
VB2
1
MVB1
VB1
0
MVB0
VB0
0
VCO Single band
Calibration I
—
1
—
1
—
0
Reset
1
DCD [1:0]: VCO Deviation Calibra
a
y
.
R
ecommend DCD = [01].
Delay time = PDL (Delay Register I, 0
h)
×
(DDC + 1 ).
DAGS: DAG Calibration Valu
Sel
ct. Recommend DAGS = [0].
[0]:
Auto calibration value.
[1]:
Manual calibration value.
PDV: Reserved for in
ernal usage only. Shall be set [0].
MVBS: VCO
ank cal
bration value select. Recommend MVBS = [0].
[0]:
Auto calibr
tion
alue.
[1]:
Manual calibration value.
MVB [2:0
CO band manual calibration value.
VBCF: VCO band auto calibration flag.
[0]:
Pass.
[1]:
Fail.
VB [2:0]: VCO bank calibration value.
MVBS= 0: Auto calibration value (AVB).
MVBS= 1: Manual calibration value (MVB).
9.2.43 VCO Single band Calibration Register II (Address: 0x82Ah)
Name R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
Sep., 2014, Version 0.6 (Preliminary)
30
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
VCO Single band
Calibration II
W
DAMV1
1
DAMV0
0
VTH2
1
VTH1
1
VTH0
1
VTL2
0
VTL1
1
VTL0
1
Reset
DMV [1:0]: Demodulator D/A Voltage Range Select. Recommend DMV = [10].
[00]:
1/32*1.2.
[01]:
1/16*1.2.
[10]:
1/8*1.2.
[11]:
1/4*1.2.
VTH [2:0]: RF AGC upper threshold level setting
[000]:
VDD_A
–
0.6V.
[001]:
VDD_A
–
0.7V.
[010]:
VDD_A
–
0.8V.
[011]:
VDD_A
–
0.9V
[100]:
VDD_A
–
1.0V.
[101]:
VDD_A
–
1.1V.
[110]:
VDD_A
–
1.2V.
[111]:
VDD_A
–
1.3V
VDD_A is on chip analog regulator output voltage
VTL [2:0]: RX AGC lower threshold level setting
[000]:
0.1V.
[001]:
0.2V.
[010]:
0.3V.
[011]:
0.4V.
[100]:
0.5V.
[101]:
0.6V.
[110]:
0.7V.
[111]:
0.8V
9.2.44 Battery detect Register (Address: 0x82Bh)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
W
R
RGS
RGV1
RGV1
0
RGV0
RGV0
0
PACTL
BDF
0
BVT2
BV
BVT1
BVT1
1
BVT0
BVT0
1
BDS
BDS
0
Battery detect
Reset
—
0
RGS: VDD_D voltage setting in Sleep mode.
[0]:
1.8V.
[1]:
1.6V.
RGV [1:0]: VDD_D and VDD_A voltage setting in non-Sleep
ode
ecommend RGV = [11].
[00]:
1.9V.
[01]: 1
.8V.
[10]:
1.7V.
[11]:
1.6V.
PACTL: Reserved for internal usage only. Shall be set
BVT [2:0]: Battery voltage detect threshold.
[000]: 1
.8V.
[001]: 1
.9V.
[010]:
2.0V.
[011]:
2.1V.
[100]:
2.2V.
[101]:
2.3V.
[110]:
2.4V.
[111]:
2
V.
BDS: Battery detect enable.
[0]:
Disable.
[1]:
Enable. It will be clea
ter battery detection done.
BDF: Battery detection flag.
[0]:
Battery voltage less than t
reshold.
[1]:
Battery voltage greater than threshold.
Refer to chapter 19 for details.
9.2.45 TX test Reg
ster (Address: 0x82Ch)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
TX test
Reset
W
IFBC1
0
IFBC0
0
TXCS
0
PAC1
1
PAC0
0
TBG2
1
TBG1
1
TBG0
1
RMP [1:0]
PA ramp up timing scale.
Delay scales 2^(RMP [1:0])
TXCS: TX Current Setting.
PAC [1:0]: PA Current Setting.
TBG [2:0]: TX Buffer Setting.
9.2.46 Rx DEM test Register I (Address: 0x82Dh)
Name R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
Sep., 2014, Version 0.6 (Preliminary)
31
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
Rx DEM test I
Reset
W
DMT
0
DCM1
1
DCM0
1
MLP1
0
MLP0
0
SLF2
1
SLF1
0
SLF0
0
DM
T
:
R
eserved for internal usage onl
y
.
S
hall be set to [0].
DCM [1:0]: Demodulator DC estimation mode.
[00]:
Fix mode (For testing only). DC level is set by DCV [7:0].
[01]:
Preamble hold mode. DC level is preamble average value.
[10]:
Average and hold mode. DC level is the average value hold about 8 bit data rate later after preamble is detected.
[11]:
Payload average mode (For internal usage). DC level is payload data average.
MLP [1:0]: Reserved for internal usage onl
y
.
S
hall be set to [000].
SLF [2:0]: Reserved for internal usage onl
y
.
S
hall be set to [111].
9.2.47 Rx DEM test Register II (Address: 0x82Eh)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
B
2
Bit 1
Bit 0
Rx DEM test II
Reset
W
DCV7
1
DCV6
0
DCV5
0
DCV4
0
DCV3
0
DCV2
0
DCV1
0
DCV0
0
DCV [7:0]: Demodulator fix mode DC value. Recommend DCV = [0x80].
9.2.48 Charge Pump Current Register (Address: 0x82Fh)
Name
R/W
Bit 7
Bit 6
Bit 5
B
4
Bit 3
Bit 2
Bit 1
Bit 0
Charge Pump Current
Reset
W
CPM3
1
CPM2
1
CPM1
1
PM
1
CPT3
1
CPT2
1
CPT1
1
CPT0
1
CPM [3:0]: Charge Pump Current Setting for VM loop. R
mend CPM = [1111].
Charge pump current = (CPM + 1) / 16 mA.
CPT [3:0]: Charge Pump Current Setting for VT loop. Recommend CPT = [1111].
Charge pump current = (CPT + 1) / 16 mA.
9.2.49 Crystal test Register (Ad
s: 0x830h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
Crystal test
Reset
W
PRS
0
QDS
0
QLIM
0
DBD
0
XCC1
0
XCC0
1
XCP1
0
XCP0
1
PRS: Limiter amplifier
isch
rge manual select. Recommend PRS =[0].
QDS: VDD_A Qu
Dis
harge Select.
[0]:
Disable.
:
E
ab
e.
QLIM: q
charge select for IF limiter amp.
[0]:
disab
[1]:
enable (QLIM fall down delay 10us)
DBD: Reserved for internal usage onl
y
.
S
hall be set to [0].
XCC[1:0]: Crystal current setting. Shall be set to [01].
XCP[1:0]: Crystal regulating couple setting. Shall be set to [01].
9.2.50 PLL test Register (Address: 0x831h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
PLL test
Reset
W
MDEN
0
PMPE
1
PRIC1
1
PRIC0
0
PRRC1
1
PRRC0
0
SDPW
0
NSDO
0
Sep., 2014, Version 0.6 (Preliminary)
32
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
MDEN : Use for Manual VCO Calibration. Shall be set to [0].
PMPE: Reserved for internal usage only. Shall be set to [1].
PRIC[1:0]: Reserved for internal usage only. Shall be set to [01].
PRRC[1:0]: Reserved for internal usage only. Shall be set to [01].
SDPW: Reserved for internal usage only. Shall be set to [0].
NSDO: Reserved for internal usage only. Shall be set to [1].
9.2.51 VCO test Register I (Address: 0x832h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
VCO test I
Reset
W
DEVGD2
0
DEVGD1
0
DEVGD0
0
TLB1
1
TLB0
1
RLB1
RLB0
1
MGS
0
DEVGD [2:0]: Sigma Delta Modulator Data Delay Setting. Recommend DEVGD = [000].
TLB [1:0]: Reserved for internal usage onl
y
.
S
hall be set to [11].
RLB [1:0]: Reserved for internal usage onl
y
.
S
hall be set to [00].
MGS: IGC Manual setting select.
[0]:
Auto.
[1]:
Manual.
9.2.52 VCO test Register II (Address: 0x833h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
VCO test II
Reset
W
CHD3
0
CHD2
1
CHD1
0
CHD0
1
RFT3
0
RFT2
0
RFT1
0
RFT0
0
CHD [3:0]: Channel Frequency Offset for De
i
tion Calibration.
Offset channel number = +/- (CHD + 1).
RFT [3:0]: RF analog pin configur
r testing. Recommend RFT= [0000].
9.2.53 IFAT Register (Add
ess: 0x834h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
VCO test II
Reset
W
MPDT5
1
MPDT4
0
MPDT3
0
MPDT2
0
MPDT1
0
MPDT0
0
—
—
LIMC
1
MPDT[5:0]: TX ramp up/down scale select.
LIMC: Reserved for internal usage onl
y
.
S
hall be set to [1].
9.2.54 RF
Test Register I (Address: 0x835h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
RFT1
Reset
W
ASMV2
0
ASMV1
0
ASMV0
0
SDMS
1
OLM
0
CPCS
1
CPH
1
CPS
1
AMSV [2:0]: TX Ramp up/Ramp down Timing Select.
[000]:
4us,
[001]:
8us.
[010]:
12us.
[011]:
16us.
[100]:
20us,
[101]:
24us.
[110]:
28us.
[111]:
32us.
SDMS: Reserved for internal usage onl
y
.
S
hall be set to [1].
OLM : Open Loop Modulation Enable. Shall be set to [0].
[0]:
Disable.
[1]:
Enable.
Sep., 2014, Version 0.6 (Preliminary)
33
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
CPCS: Charge Pump Current Select. Shall be set to [0].
[0]:
Use CPM for TX, CPT for RX.
[1]:
Use CPTX for TX, CPRX for RX.
CPH: Charge Pump High Current. Shall be set to [0].
[0]:
Normal.
[1]:
High.
CPCS: Charge Pump Current Select. Shall be set to [0].
[0]:
Use CPM for TX, CPT for RX.
[1]:
Use CPTX for TX, CPRX for RX.
9.2.55 RFT Test Register II (Address: 0x836h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
W
R
—
—
—
CRS3
CRSR3
0
CRS2
CRSR2
1
CRS1
CRSR1
0
CRS0
CRSR0
0
SRS2
SR
R2
1
SRS1
SRSR1
0
SRS0
SRSR0
0
RFT2
Reset
CRS [2:0]: RSSI voltage offset fine trim setting.
SRS [2:0]: RSSI voltage curve slope fine time setting.
9.2.56 RFT Test Register III (Address: 0x837h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit
Bit 3
Bit 2
Bit 1
Bit 0
W
R
—
—
0
STMP
STM5
STMR
1
TM4
STMR4
0
STM3
STMR3
0
STM2
STMR2
0
STM1
STMR1
0
STM0
STMR0
0
RFT3
Reset
—
0
STMP: Temp voltage ADC reading select.
[0]:
1 scale / degree C.
[1]:
2 scale/degree C.
STM [5:0]: ADC voltage fine trim setting.
9.2.57 RFT Test Register IV (A
: 0x838h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
W
R
—
—
—
DVI1
DVI0
FBG4
FBGR4
1
FBG3
FBGR3
0
FBG2
FBGR2
0
FBG1
FBGR1
0
FBG0
FBGR0
0
RFT4
Reset
—
0
—
0
DVI[1:0]: Reserv
d for internal usage
FBG[4:0]: Ba
dga
voltage SPI fine trim setting.
9.2.58 R
est Register V (Address: 0x839h)
Na
e
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
W
R
FGC1
FGCR1
1
FGC0
FGCR0
1
CTR5
CTRR5
1
CTR4
CTRR4
0
CTR3
CTRR3
0
CTR2
CTRR2
0
CTR1
CTRR1
0
CTR0
CTRR0
0
RFT5
Reset
FGC[1:0]: BPF fine gain control.
CTR [5:0]: ADC voltage SPI fine trim setting.
9.2.59 Channel Index Register (Address: 0x83Ah)
Name R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
Sep., 2014, Version 0.6 (Preliminary)
34
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
Channel Index
Reset
W
—
—
—
0
CHIDX5
1
CHIDX4
0
CHIDX3
0
CHIDX2
1
CHIDX1
0
CHIDX0
1
CHIDX[5:0]: Whitening seed setting for BLE mode(BLE_ON=1).
9.2.60 CRC Register 1 (Address: 0x83Bh)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
CRC1
Reset
W
CRCINIT23 CRCINIT22 CRCINIT21 CRCINIT20 CRCINIT19 CRCINIT18 CRCINIT17 CRCINIT16
0
1
0
1
0
1
0
1
CRCINIT[23:0]: CRC initial value for TX CRC-24bits encoder.
9.2.61 CRC Register 2 (Address: 0x83Ch)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
CRC2
Reset
W
CRCINIT15 CRCINIT14 CRCINIT13 CRCINIT12 CRCINIT11 CR
IT1
CRCINIT9 CRCINIT8
0
1
0
1
0
1
0
1
9.2.62 CRC Register 3 (Address: 0x83Dh)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit
Bit 2
Bit 1
Bit 0
CRC3
Reset
W
CRCINIT7 CRCINIT6 CRCINIT5 CRCINI
4 CRC
NIT3 CRCINIT2 CRCINIT1 CRCINIT0
0
1
0
1
0
1
0
1
9.2.63 CRC Register 4 (Address: 0x83Eh)
Name
R/W
Bit 7
Bit 6
Bit
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
CRC4
Reset
W
CRCINR23 CRCINR22
RCINR21 CRCINR20 CRCINR19 CRCINR18 CRCINR17 CRCINR16
0
1
0
1
0
1
0
1
CRCINR[23:0]: CRC initial value for RX CRC
24bits decoder.
9.2.64 CRC Register 5 (Address: 0x83Fh)
Name
R/W
Bit 7
it 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
CRC5
Reset
W
C
CINR15 CRCINR14 CRCINR13 CRCINR12 CRCINR11 CRCINR10
CRCINR9 CRCINR8
0
1
0
1
0
1
0
1
9.2.65 CRC Regis
er 6 (Address: 0x840h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
CRC6
Reset
W
CRCINR7 CRCINIR6 CRCINIR5 CRCINIR4 CRCINIR3 CRCINIR2 CRCINIR1 CRCINIR0
0
1
0
1
0
1
0
1
9.2.66 VCO Single band Calibration Register I (Address: 0x841h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
W
R
DAGM7
ADAG7
1
DAGM6
ADAG6
0
DAGM5
ADAG5
0
DAGM4
ADAG4
0
DAGM3
ADAG3
0
DAGM2
ADAG2
0
DAGM1
ADAG1
0
DAGM0
ADAG0
0
VCO Single band
Calibration III
Reset
DAGM [7:0]: DAG Manual Setting Value. Recommend DAGM = [0x80].
ADAG [7:0]: Auto DAG Calibration Value.
Sep., 2014, Version 0.6 (Preliminary)
35
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
9.2.67 VCO deviation Calibration Register I (Address: 0x842h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
W
R
DEVS3
DEVA7
0
DEVS2
DEVA6
1
DEVS1
DEVA5
1
DEVS0
DEVA4
1
DAMR_M
DEVA3
VMTE_M
DEVA2
VMS_M
DEVA1
MSEL
DEVA0
VCO Deviation I
Reset
0
0
0
0
DEVS [3:0]: Deviation Output Scaling. Recommend DEVS = [0011].
DAMR_M: DAMR Manual Enable. Recommend DAMR_M = [0].
[0]:
Disable.
[1]:
Enable.
VMTE_M: VMT Manual Enable. Recommend VMTE_M = [0].
[0]:
Disable.
[1]:
Enable.
VMS_M: VM Manual Enable. Recommend VMS_M = [0].
[0]:
Disable.
[1]:
Enable.
MSEL: VMS, VMTE and DAMR control select. Recommend MSEL = [0].
[0]:
Auto control.
[1]:
Manual control.
DEVA [7:0]: Deviation Output Value.
MVDS (0x841h)= 0: Auto calibration value ((DEVC / 8
)
×
(DEVS + 1)),
MVDS (0x841h)= 1: Manual calibration value (DEVM [6:0]).
9.2.68 VCO deviation Calibration Register II (Address: 0x843h)
Name
R/W
Bit 7
Bit 6
Bit 5
it 4
Bit 3
Bit 2
Bit 1
Bit 0
W
R
MVDS
ADEV7
0
DEVM6
ADEV6
0
DEVM
ADE
1
DEVM4
DEV4
0
DEVM3
ADEV3
1
DEVM2
ADEV2
0
DEVM1
ADEV1
0
DEVM0
ADEV0
0
VCO Deviation II
Reset
MVDS: VCO Deviation Calibration Select. Recommend MVDS = [0].
[0]:
Auto calibration value.
[1]:
Manual calibra
n value.
DEVM [6:0]: VCO Deviation Manual Calib
atio
Value.
ADEVC [7:0]: VCO Deviation Auto
tion Value.
9.2.69 VCO deviation Cal
bration Register III (Address: 0x844h)
Name
R
W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
VCO Deviation III
Reset
W
R
VMG7
1
VMG6
0
VMG5
0
VMG4
0
VMG3
0
VMG2
0
VMG1
0
VMG0
0
VMG [7:0]: V
Ce
ter Value for Deviation Calibration. Recommend VMG [7:0] = [0x80].
9.2.70 A
Control Register (Address: 0x845h)
Na
e
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
ADC
W
AVSEL1
1
AVSEL0
0
MVSEL1
1
MVSEL0
0
RADC
0
FPS2
0
FPS1
0
FPS0
0
Reset
AVSEL [1:0]: ADC average times (for Carrier / temeperature sensor / external ADC). Recommend AVSEL = [10].
[00]:
No average.
[01]:
Average 2 times.
[10]:
Average 4 times.
[11]:
Average 8 times.
MVSEL [1:0]: ADC average times (for VCO calibration and RSSI ). Recommend MVSEL = [01].
[00]:
Average 8 times.
[01]:
Average 16 times.
[10]:
Average 32 times.
[11]:
Average 64 times.
RADC: ADC read out average mode.
[0]:
1, 2, 4, 8 average mode. The average number is according to the setting of AVSEL in RX Gain Register (IV).
Sep., 2014, Version 0.6 (Preliminary)
36
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
[1]:
8, 16, 32, 64 average mode. The average number is according to the setting of MVSEL in RX Gain Register (IV)
FPS[2:0]
:
Gaussian filter BT setting.
GDR=0.
FPS[2:0]
BT
7
1.4
6
1.3
5
1.2
4
3
2
1
0
1.1 0.75 0.7 0.65 0.6
GDR=1.
FPS[2:0]
BT
7
6
5
4
3
X
2
X
1
X
0
X
0.7 0.65 0.6 0.55
9.2.71 WOT Register (Address: 0x846h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bi
1
Bit 0
WOT
W
—
0
SPSS
0
WMODE
0
WN1
0
WN0
0
Reset
—
—
—
.
SPSS: Mode back select in WOT mode.
[0]:
Standby mode.
[1]:
PLL mode.
WMODE: Wakeup mode select.
[0]:
WOR
[1]:
WOT
WN[1:0]: WOT Wake up times.
9.2.72 Channel Group Register I (Address: 0x847h)
Name
R/W
Bit 7
Bit 6
Bit 5
it 4
Bit 3
Bit 2
Bit 1
Bit 0
CHGL
Reset
R/W
CHGL7
0
CHGL6
0
CHG
1
CHGL4
0
CHGL3
1
CHGL2
0
CHGL1
0
CHGL0
0
CHGL [7:0]: PLL channel group low boundary se
ing.
9.2.73 Channel Group Register II (Addr
s: 0x848h)
Name
R/W
Bit 7
it 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
CHGH
Reset
R/W
CHGH
0
HG
6
1
CHGH5
0
CHGH4
1
CHGH3
0
CHGH2
0
CHGH1
0
CHGH0
0
CHGH [7:0]: PLL channel gr
up high boundary setting.
PLL frequency is divided into 3 groups:
Channel
Group1
0 ~ CHGL-1
Group2
Group3
CHGL ~ CHGH-1
CHGH ~ 255
Note: Ea
h group needs its own VCO current, bank and deviation calibration. Use the same calibration value for the frequency
in the sam
roup.
9.2.74 Charge Pump Current Register II (Address: 0x849h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
CPC II
Reset
W
CPTX3
0
CPTX2
0
CPTX1
1
CPTX0
0
CPRX3
0
CPRX2
0
CPRX1
1
CPRX0
0
CPTX [3:0]: Charge Pump Current Setting for TX mode. Recommend CPTX = [0010].
Charge pump current = (CPTX + 1) / 16 mA.
CPRX [3:0]: Charge Pump Current Setting for RX mode. Recommend CPRX = [0010].
Charge pump current = (CPRX + 1) / 16 mA.
Sep., 2014, Version 0.6 (Preliminary)
37
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
9.2.75 VCO Modulation Delay Register (Address: 0x84Ah)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
VCO Delay
Reset
W
—
0
INTPRC
0
DEVFD2
1
DEVFD1
0
DEVFD0
1
DEVD2
0
DEVD1
0
DEVD0
0
INTPRC: Internal PLL loop filter resistor and capacitor select.
[0]:
disable.
[1]:
enable
DEVFD [2:0]: VCO Modulation Data Delay by 8x over-sampling Clock. Recommend DEVFD = [101].
DEVD [2:0]: VCO Modulation Data Delay by XCPCK Clock. Recommend DEVD = [000].
9.2.76 Internal Capacitance Register (Address: 0x84Bh)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
INTC
W
VRPL1
0
VRPL0
0
VCOSC5
0
VCOSC4
1
VCOSC3
0
VC
C2
1
VCOSC1
0
VCOSC0
0
Reset
VRPL [1:0]: internal PLL loop filter resistor value select.
[00]:
500 ohm.
[01]:
666 ohm.
[10]:
1 K ohm.
[11]:
2K ohm.
VCOSC[5:0]: Reserved for internal usage
9.2.77 RX Detection Register (Address: 0x84Ch)
Name
R/W
Bit 7
Bit 6
Bit 5
it 4
Bit 3
Bit 2
Bit 1
Bit 0
W
R
PRED
REDN1
PREDN0
PREUP2
PREUP1
PREUP0
DC_SEL RXDCS
DET
DCOUT[7:0]
Reset
0
0
1
0
0
0
1
0
DC_SEL: Initial DC value select when sync word ok.[0]:
DC set by last pattern DC
[1]:
DC set by 0x82Eh DC value.
RXDCS: RX dc average clock setting. Re
om
ed RXDCS=[0]
PREDN[2:0]: Preamble detect low
old setting.
PREUP[2:0]: Preamble dete
t high threshold setting.
DCOUT [7:0]: Read demodulator DC value.
9.2.78 BLE Header Register 0 (Address: 0x84Dh)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
W
R
TXHDR15 TXHDR14 TXHDR13 TXHDR12 TXHDR11 TXHDR10
TXHDR9
RXHDR15 RXHDR14 RXHDR13 RXHDR12 RXHDR11 RXHDR10
RXHDR9
TXHDR8
RXHDR8
0
HEADER0
Re
0
0
0
0
0
0
0
TXHDR[15:0]: TX header setting for BLE mode.
RXHDR[15:0]: RX header setting for BLE mode.
9.2.79 BLE Header Register 1 (Address: 0x84Eh)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
W
R
TXHDR7
RXHDR7
0
TXHDR6
RXHDR6
0
TXHDR5
RXHDR5
0
TXHER4
RXHDR4
0
TXHDR3
RXHDR3
0
TXHDR2
RXHDR2
0
TXHDR1
RXHDR1
0
TXHDR0
RXHDR0
0
HEADER1
Reset
Sep., 2014, Version 0.6 (Preliminary)
38
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
9.2.80 ID Register 0 (Address: 0x84Fh)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
ID0
W/R
ID31
0
ID30
0
ID29
0
ID28
0
ID27
0
ID26
0
ID25
0
ID24
0
Reset
ID[31:0]: ID Data.
Once this address is accessed, ID Data is input/output in sequence corresponding to Write or Read.
9.2.81 ID Register 1 (Address: 0x850h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
ID1
W/R
ID23
0
ID22
0
ID21
0
ID20
0
ID19
0
ID18
0
ID
7
0
ID16
0
Reset
ID[31:0]: ID Data.
Once this address is accessed, ID Data is input/output in sequence corresponding to Write or Read.
9.2.82 ID Register 2 (Address: 0x851h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 2
Bit 1
Bit 0
ID2
W/R
ID15
0
ID14
0
ID13
0
ID12
0
ID
0
ID10
0
ID9
0
ID8
0
Reset
ID[31:0]: ID Data.
Once this address is accessed, ID Data is input/output in se
en
corresponding to Write or Read.
9.2.83 ID Register 3 (Address: 0x852h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
ID3
W/R
ID7
0
ID6
0
ID5
0
ID4
0
ID3
0
ID2
0
ID1
0
ID0
0
Reset
ID[31:0]: ID Data.
Once this address is accessed, ID Data i
in
t/output in sequence corresponding to Write or Read.
9.2.84 DID Register 0 (Address
3h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
DID0
R
DID31
1
DID30
0
DID29
1
DID28
0
DID27
1
DID26
0
DID25
1
DID24
0
Reset
DID[31:0]: Device ID.
9.2.85 DID
egister 1 (Address: 0x854h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
D
R
DID23
1
DID22
0
DID21
0
DID20
0
DID19
0
DID18
0
DID17
0
DID16
1
Re
et
DID[31:0]: Device ID.
9.2.86 DID Register 2 (Address: 0x855h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
DID2
R
DID15
0
DID14
0
DID13
0
DID12
0
DID11
0
DID10
1
DID9
0
DID8
1
Reset
DID[31:0]: Device ID.
Sep., 2014, Version 0.6 (Preliminary)
39
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
9.2.87 DID Register 3 (Address: 0x856h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
DID3
R
DID7
1
DID6
0
DID5
1
DID4
0
DID3
0
DID2
0
DID1
0
DID0
1
Reset
DID[31:0]: Device ID.
9.2.88 EXT Register 1 (Address: 0x857h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
EXT1
Reset
W/R
—
—
XEC
1
BREV
0
BGS
0
LIMB
0
ADCCS
0
BOD
0
REGR
0
XEC
:
Reserved. Should set to [1]
BREV
:
data byte reversion for TX data in the air
[0]:
normal.
[1]:
reverted.
BGS
:
Reverved should set to [0]
LIMB
:
Reserved. Should set to [0]
ADCCS
:
Reserved. Should set to [0]
BOD
: regulator input low voltage detect selection.
[0]:
disable.
[1]:
enable.
REGR
:
pin7
“
VDD_R
”
driver voltage output enable for 12bit ADC
[0]:
disable.
[1]:
enable. Output voltage is equal to pin8
“
VDD_A
”
9.2.89 EXT Register 2 (Address: 0x858h)
Name
R/W
Bit 7
Bit 6
Bit 5
it 4
Bit 3
Bit 2
Bit 1
Bit 0
EXT2
Reset
W
VTRB3
0
VTRB2
0
VTRB
0
VTRB0
0
VMRB3
0
VMRB2
0
VMRB1
0
VMRB0
0
VTRB[3:0]
:
Reserved. Should set to [0000]
VMRB[3:0]
:
Reserved. Should set to [0000]
9.2.90 EXT Register 3 (Address: 0x859h
Name
R/W
Bit 7
B
t 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
EXT3
Reset
W
—
0
VCS
0
VCSW
0
FAS
0
CGC
0
IWA
0
IWC
0
LBG
0
IFAS: Reserved for internal
sage only.
CGC: Clock generation setting. [Fcsck = 32Mhz]: GRC=7, CGC=0.
[Fcsck = 64Mhz]: GRC=3, CGC=1.
IWA: RXFE new IFAMP path
ain
IWC: Reserved for i
ternal usage only. Shall be set to [0].
LBG: Reserved
inte
nal usage only.
VCS
:
Reserv
d.
VCSW
:
Reserved.
9.2.91 ADC Control Register (Address: 0x85Ah)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
W
R
BUFS
CKS
—
—
—
0
MODE
MODE
0
MVS2
MVS2
0
MVS1
MVS1
0
MVS0
MVS0
0
ADCE
ADCE
0
ADCCTL
Reset
—
0
1
BUFS
:
input buffer select for 12 bit ADC.
[0]:
disable.
[1]:
enable.
CKS: ADC clock selected.
[0]
: 1 MHz
[1]
: 4 MHz
Sep., 2014, Version 0.6 (Preliminary)
40
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
MODE: ADC measurement mode.
[0]:
Single mode.
[1]:
Continuous mode.
MVS [1:0]: ADC average times (for VCO calibration and RSSI ).
[00]:
Average 8 times.
[01]:
Average 16 times.
[10]:
Average 32 times.
[11]:
Average 64 times.
ADCE: ADC measurement enable
9.2.92 ADC Value Register 1 (Address: 0x85Bh)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
B
t 0
W
R
ADCIE
—
—
—
MVADC8
—
ADIVL
ADC11
0
ADCYC
ADC10
0
ENAD
ADC9
0
DTMP
ADC8
0
ADCAVG1
Reset
MVADC11 MVADC10
MVADC9
0
— —
ADCIE : 12-bits interrupt enable.
[0]:
disable.
[1]:
enable.
ADIVL: Reserved. Should set to [0]
ADCYC: Reserved. Should set to [0]
ENADC: Enable ADC.
MVADC [11:0]: Moving average ADC output value
ADC [11:0]: ADC output value
MVADC [11:0]: Moving average ADC output value
9.2.93 ADC Value Register 2 (Address: 0x85Ch)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
ADCAVG2
Reset
R
MVADC7
—
MVADC6
—
MVADC5
—
MVADC4
—
MVADC3
—
MVADC2
—
MVADC1
—
MVADC0
—
MVADC [11:0]: Moving average AD
utput value
9.2.94 ADC Value Register 3 (A
s: 0x85Dh)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
ADCAVG3
Reset
R
A
C7
—
ADC6
—
ADC5
—
ADC4
—
ADC3
—
ADC2
—
ADC1
—
ADC0
—
ADC [11:0]: ADC
utp
t value
9.2.95 Timer
nte
val Register 1 (Address: 0x85Eh)
N
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
W/R
TMR_ITV[15:8]
TMR
TV1
Reset
0
0
0
0
0
0
0
0
TMR_ITV[15:0]
: Timer interval setting.
Timer interval can be set to be:
TMRCKS[1:0] = 00: 0.15625 ms ~ 10.24 s
TMRCKS[1:0] = 01: 0.3125 ms ~ 20.48 s
TMRCKS[1:0] = 10: 0.625 ms ~ 40.96 s
TMRCKS[1:0] = 11: 1.25 ms ~ 81.92 s
Sep., 2014, Version 0.6 (Preliminary)
41
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
9.2.96 Timer Interval Register 2 (Address: 0x85Fh)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
W/R
TMR_ITV[7:0]
TMRITV2
Reset
0
0
0
0
0
0
0
0
TMR_ITV[15:0]
: Timer interval setting.
Timer interval can be set to be:
TMRCKS[1:0] = 00: 0.15625 ms ~ 10.24 s
TMRCKS[1:0] = 01: 0.3125 ms ~ 20.48 s
TMRCKS[1:0] = 10: 0.625 ms ~ 40.96 s
TMRCKS[1:0] = 11: 1.25 ms ~ 81.92 s
9.2.97 Timer Wake On Radio Register 0 (Address: 0x860h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
W/R
—
TMRWOR0
Reset
0
0
0
0
0
0
0
0
9.2.98 Timer Wake On Radio Register 1 (Address: 0x861h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit
Bit 2
Bit 1
Bit 0
W/R
TMRWORS
—
0
—
0
TMR_O
S4 TMR_OFS3 TMR_OFS2 TMR_OFS1 TMR_OFS0
TMRWOR1
Reset
0
0
0
0
0
TMRWORS:
Timer WOR / WOT selection.
[0]:
WOR
[1]:
WOT
TMR_OFS[4:0]:
Interrupt offset for 16-bits Timer.
9.2.99 Timer Control Register (Address
0x862h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
W
R
TMRON
TMRIE
MRIE
0
TMRIF
TMRIF
0
TMRCOR TMRWOR
TMRCKS[1:0]
TMRCKS[1:0]
TMR_CE
TMR_CE
0
TMRCTL
Reset
—
0
—
—
0
0
0
0
TMRON:
Turn on TMR.
TMRIE
: Timer Interrupt Enable.
[0]: Disable.
[1]: Enable.
TMRIF
: Timer Int
rupt
lag. (Write “1” to clear)
TMRCOR
: Timer
LK re-correct when sync.
[0]:
disable.
[1]:
enable
TMRWO
er WOR function enable.
[0]: Disabl
[1]: Enable.
TMRCKS[1:0]: Select Timer Source Clock
[00]: 6.4 kHz
[01]: 3.2 kHz
[10]: 1.6 kHz
[11]: 0.8 kHz
TMR_CE
: Start Timer counting.
[0]: Stop.
[1]: Start.
Sep., 2014, Version 0.6 (Preliminary)
42
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
9.2.100 Power Control Register 0 (Address: 0x863h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
W
CBG2
0
CBG1
0
CBG0
0
PDNS
1
STS
0
ENDL2
0
ENDL1
0
ENDL0
0
PWRCTL0
Reset
CBG[2:0]: Reserved for internal usage.
PDNS: Power manager to turn on REGOD Recommend PDNS = [0]
STS: Reserved for internal usage onl
y
.
S
hall be set to [0].
ENDL[2:0]: Reserved for internal usage only
9.2.101 Power Control Register 1 (Address: 0x864h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
B
t 1
Bit 0
W
EBOD
1
ENAV
0
QDSA
1
ENDV
1
QDSD
0
CEL
0
SVRE
0
CELA
0
PWRCTL1
Reset
EBOD: Reserved for internal usage.
ENAV: REGOA and REGOS connection.
QDSA: quick discharge select for REGOA.
ENDV: REGOA is connected to REGOD.
QDSD: quick discharge select for REGOD.
CEL: Digital voltage select in standby mode. Recommend CEL = [0].
SVREF: Reserved for internal usage. Recommend SVREF = [0].
CELA: Reserved for internal usage.
PM mode: Low power operation select.
MCU STOP
PM1(idle)
ENAV=1, QDSA=0, ENDV=1, QDSD=0
PM2(sleep)
ENAV=0, QDSA=1, ENDV=1, QDSD
PM3(deep sleep)
ENAV=0, QDSA=1, ENDV=0, QDSD=
9.2.102 Power Control Register 2 (Address:
x865h)
Name
R/W
Bit 7
Bit
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
W
RTCPUNIE
—
—
RCR1
0
RCR0
0
RGC1
0
RGC0
1
RCHC
0
PWRCTL2
Reset
0
—
—
RTCPUNIE: Reserved for internal
Shall be set to [0].
RCR[1:0]: Reserved for internal usag
.
RGC[1:0]: Low power band-
ap current select. Recommend RGC = [01]
RCHC: Reserved for internal
sage.
9.2.103 Power Contr
l Re
ister 3 (Address: 0x866h)
Name
R
W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
W
MR7
0
MR6
0
MR5
0
MR4
0
MR3
0
MR2
0
MR1
0
MR0
0
PWRCT
3
Reset
MR[7:0]:
served for internal usage.
9.2.104 Power Control Register 4 (Address: 0x867h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
W
MS7
0
MS6
0
MS5
0
MS4
0
MS3
0
MS2
0
MS1
0
MS0
0
PWRCTL4
Reset
MS[7:0]: Reserved for internal usage.
9.2.105 DC_SHIFT(Address: 0x868h)
Name R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
Sep., 2014, Version 0.6 (Preliminary)
43
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
dc_shift[7:0]
W/R
DCSFT
Reset
0
1
0
1
0
1
0
0
dc_shift [7:0]: DC average by ID initial dc value shift setting. (NOTE): DC_SHIFT[7] is signed bit.
9.2.106 TX_5DLY(Address: 0x869h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
W
HDRSW
0
EARTS
EACKS
TX_5DLY[4:0]
TX5DY
Reset
0
0
0
0
0
0
0
HDRSW: switch header length
[1]: 6 bits
[0]: 5 bits
EARTS:
Auto resend
( EARTS=1
TX)
EACKS:
Auto ack
( EACKS=1
RX)
TX_5DLY [4:0]: TX data output delay timing after PDN_TX enable.
9.2.107 ACKRT (Address: 0x87Ch)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit
Bit 2
Bit 1
Bit 0
W
L
OUT[5:0]
ACKRT
Reset
—
0
—
0
0
1
0
0
0
1
LL_TIME_OUT[5:0]:
RX timeout register,
Timeout = 20us x (1+LL_TIM
_OUT)
Sep., 2014, Version 0.6 (Preliminary)
44
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
10.SOC Architectural Overview
A8105 microcontroller is instruction set compatible with the industry standard 8051. Besides FSK/GFSK RF transceiver, A8105
integrates many features, three 8/16bit counters/timers, watchdog timer, RTC, UART, SPI interface, I
2
C interface, 2 channels
PWM, 8 channels ADC and battery detector, The interrupt controller is extended to support 6 interrupt sources; watchdog timer,
RTC, SPI, I
2
C, ADC and RF. A8105 includes TTAG (2-wire) debug circuitry that provides full time, real-time, in-circuit
debugging.
10.1 Pipeline 8051 CPU
A8105 microcontroller has pipelined RSIC architecture 10 times faster compared to standard 8051 archite
e. The pipeline
8051 is fully compatible with the MCS-51
TM
instruction set. User can use standard 8051 assemblers and co
pilers to develop
software. The pipelined architecture 8051 has greatly increases its instruction throughput over the standa
d 8051 architecture.
A8105 has a total of 110 instructions. The table below shows the total number of instructions that re
uire each execution time.
For more detail information of instruction, please refer Table 10.1.
Clock to Execute
1
2
3
4
5
8
6
1
Number of instructions
24
38
29
11
10.2 Memory Organization
The memory organization of A8105 is similar to the standard 8051. The memory organization is shown as figure 10.1
Program /Data
memory (FLASH)
External Data
address sp
ce
Internal Data Space
0x3FFF
0xFF
2KBytes
Data Storage
(In-System
Special
Function
programmable in 512
bytes sector)
Upper 128 RAM
(Indirect Adressing
Only)
0x3800
0x37FF
Registers
(Direct addressing only
0A7F
0x0900
0x80
0x7F
RF FIFO
RF Register
0x0800
0x07FF
Direct and Indirect
Addressing
Low 128
Bytes RAM
(Direct and Indirect
Addressing )
XRAM 2KBytes
(accessable using
MOVX instruction)
0x30
0x2F
Bit Addressable
0x20
General Purpose
Registers
0x1F
0x00
0
0x00
0x0000
Figure 10.1 Memory Organization
10.2.1 Program memory
The standard 8051 core has 64KB program memory space. A8105 implement 16KB flash. The last 2KB program memory
space (0x 3800 ~ 0x3FFF) supports IAP (In-Application Programming) function. The each block size in this area is 128Bytes.
User has 16 blocks in 2KB program memory space to storage data. Program memory is normally assumed to be read-only.
However, A8105 can write to program memory by IAP function call. Please reference Application note to write program memory
for more detail.
10.2.2 Data memory
The A8105 includes 256 bytes of internal RAM mapped into the data memory space from 0x00 through 0xFF. The lower 128
bytes of data memory are used for general purpose registers and scratch pad memory. Either direct or indirect addressing may
be used to access the lower 128 bytes of data memory. Locations 0x00 through 0x1F are addressable as four banks of general
Sep., 2014, Version 0.6 (Preliminary)
45
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
purpose registers, each bank consisting of eight byte-wide registers. The next 16 bytes, locations 0x20 through 0x2F, may
either be addressed as bytes or as 128 bit locations accessible with the direct addressing mode. The upper 128 bytes of data
memory are accessible only by indirect addressing. This region occupies the same address space as the Special Function
Registers (SFR) but is physically separate from the SFR space. The addressing mode used by an instruction when accessing
locations above 0x7F determines whether the CPU accesses the upper 128 bytes of data memory space or the SFRs.
Instructions that use direct addressing will access the SFR space. Instructions using indirect addressing above 0x7F access the
upper 128 bytes of data memory. Figure 10.1 illustrates the data memory organization of the A8105.
10.2.3 General Purpose Registers
The lower 32 bytes of data memory, locations 0x00 through 0x1F, may be addressed as four banks of general
purpose
registers. Each bank consists of eight byte-wide registers designated R0 through R7. Only one of these banks m
y be enabled
at a time. Two bits in the program status word, RS0 (PSW.3) and RS1 (PSW.4), select the active register
(see description
of the PSW in SFR Definition 9.1). This allows fast context switching when entering subroutines and interru
service routines.
Indirect addressing modes use registers R0 and R1 as index registers.
10.2.4 Bit Addressable Locations
In addition to direct access to data memory organized as bytes, the sixteen data memory locatio
s at 0x20 through 0x2F are
also accessible as 128 individually addressable bits. Each bit has a bit address from 0x00 t
0x7F. Bit 0 of the byte at 0x20 has
bit address 0x00 while bit7 of the byte at 0x20 has bit address 0x07. Bit 7 of the byte at 0x2F has bit address 0x7F. A bit access
is distinguished from a full byte access by the type of instruction used (bit source or d
s
ination operands as opposed to a byte
source or destination). The MCS-
51™ ass
embly language allows an alternate n
on f
r bit addressing of the form XX.B
where XX is the byte address and B is the bit position within the byte. For exa
e instruction:
MOV C, 22.3h ;moves the Boolean value at 0x13 (bit 3 of the byte at locatio
0x
to the Carry flag.
10.2.5 Special Function Registers
The direct-access data memory locations from 0x80 to 0xFF constitu
e th
special function registers (SFRs). The SFRs provide
control and data exchange with the CIP-51’s resources and perip
eral
The CIP-51 duplicates the SFRs found in a typical 8051
implementation as well as implementing additional SFRs used to configure and access the sub-systems unique to the MCU.
This allows the addition of new functionality while retaining
tibi
ity with the MCS-
51™ instruction set. Table 9.2 lists the
SFRs implemented in the CIP-51 System Controller.
The SFR registers are accessed anytime the direct addressin
mode is used to access memory locations from 0x80 to 0xFF.
SFRs with addresses ending in 0x0 or 0x8 (e.g. P0,
CON, SCON0, IE, etc.) are bit-addressable as well as byte-addressable.
All other SFRs are byte-addressable only. Unoccupie
addresses in the SFR space are reserved for future use. Accessing
these areas will have an indeterminate effect
d should be avoided.
10.2.6 Stack
A8105 has 8-bit stack point called SP
81) located in the internal RAM space. It is incremented before data is stored during
PUSH and CALL execution and dec
d after data is popped during POP, RET and RETI execution. In the other words it
always points to the last valid stack b
he SP is accessed as any other SFRS.
Addre
s/Name R/W Bit
7 Bit
6 Bit
5 Bit
4 Bit
3 Bit
2 Bit
1 Bit
0
81h
R/W
SP
Reset
0
0
0
0
0
1
1
1
Stack pointer register
10.2.7 Data Pointer Register
A8105 ar
plemented dual data pointer registers, auto increment and auto decrement to speed up data block copying.
DPTR0 an
DPTR1 are located at four SFR addresses. Active DPTR register is selected by SEL bit (0x86.0). If SEL = 0 the
DPTR0 is s
lected otherwise DPTR1.
Address/Name R/W Bit
7 Bit
6 Bit
5 Bit
4 Bit
3 Bit
2 Bit
1 Bit
0
82h
DPL0
R/W
Reset
0
0
0
0
0
0
0
0
Address/Name R/W Bit
7 Bit
6 Bit
5 Bit
4 Bit
3 Bit
2 Bit
1 Bit
0
83h
DPH0
R/W
Sep., 2014, Version 0.6 (Preliminary)
46
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
Reset
0
0
0
0
0
0
0
0
Data Pointer Register DPTR0
Address/Name R/W Bit
7 Bit
6 Bit
5 Bit
4 Bit
3 Bit
2 Bit
1 Bit
0
84h
DPL1
R/W
Reset
0
0
0
0
0
0
0
0
Address/Name R/W Bit
7 Bit
6 Bit
5 Bit
4 Bit
3 Bit
2 Bit
1 Bit
0
85h
DPH1
R/W
Reset
0
0
0
0
0
0
0
0
Data Pointer 1 Register DPTR1
Address/Name R/W Bit
7 Bit
6 Bit
5 Bit
4 Bit
3 Bit
2 Bi
1 Bit
0
86h
DPS
Reset
R/W ID1
0
ID0 TSL
AU1 AU0
–
SEL
0
0
0
0
0
0
Data Pointers Select Regist
r
ID[1:0]
‐
Increment/decrement function select. See table below.
TSL
‐
Toggle select enable. When set, this bit allows the following D
TR
elated instruction to toggle the SEL bit following
execution of the instruction:
MOVC A, @A+DPTR
INC DPTR
MOVX @DPTR, A
MOVX A, @DPTR
MOV DPTR, #data16
When TSL=0, DPTR related instructions do not affect
tate of SEL bit.
AU
‐
When set to ‘1’ performs automatic in
rem
nt
0)/ decrement(1) of selected DPTR according to IDx bits, after each MOVX
@DPTR, MOVC @DPTR instructions
SEL
‐
Select active data pointer
–
se
e below
‐ ‐
Unimplemented bit. Read as 0
Table DPTR0, DPTR1 operations
Selected d
ta pointer register in used in the following instructions:
MOV
@DPTR,A
MOVX A,@DPTR
MOVC A,A+DPTR
JMP @A+DPTR
INC DPTR
MOV DPTR,#data16
10.2.8 RF Registers and RF FIFO
RF registers are RF radio control registers and located in 0x0800 ~ 0x08ff. Please refer the section 9.2 and the related function
setting in the datasheet. A8105 has 384 Bytes FIFO located from 0x0900 to 0x0A7F. There are 128 bytes FIFO from 0x0900 ~
0x097F for data transmitting. There are 128 bytes FIFO from 0x0980 ~ 0x09FF for data receiving.
Sep., 2014, Version 0.6 (Preliminary)
47
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
10.3 Instruction set
A8105 use a high performance, pipeline 8051 core and it is filly compatible with the standard MCS-51
TM
instruction set.
Standard 8051 development tools can used to develop software for A8105. All A8105 instruction sets are the binary and
functional equivalent of the MCS-51
TM
. However, instruct timing is different with the standard 8051. All instruction timings are
specified in the terms of clock cycles as shown in the table 10.1
Mnemonic
Description
Code
0x11
‐
0xF1
0x24
Bytes Cycles
ACALL addr11
ADD A,#data
ADD A,@Ri
ADD A,direct
ADD A,Rn
ADDC A,#data
ADDC A,@Ri
ADDC A,direct
ADDC A,Rn
AJMP addr11
ANL C,/bit
ANL A,#data
ANL A,@Ri
ANL A,direct
ANL A,Rn
ANL C,bit
Absolute subroutine call
2
2
2
1
2
1
2
1
2
2
2
1
2
1
2
3
2
3
3
3
3
1
2
1
1
2
1
1
2
1
1
1
4
2
2
2
1
2
2
2
1
3
2
2
2
2
1
2
3
3
5
4
5
4
1
3
1
1
3
1
3
3
1
3
2
Add immediate data to accumulator
Add indirect RAM to
accumulator
Add direct byte
to accumulator
Add register to accumulator
0x26
‐
0x27
0x25
0x28
‐
0x
F
0x
4
Add immediate data to A with
carry flag
Add indirect RAM to A with carry flag
Add direct byte to A with carry flag
Add register to accumulator with carry fla
Absolute jump
0
36
‐
0x37
x35
0x38
‐
0x3F
0x01
‐
0xE1
0xB0
AND complement of direct bit to
arry
AND immediate data to accum
ator
AND indirect RAM to
tor
AND direct byte to accum
tor
AND register to
ccumu
ator
0x54
0x56
‐
0x57
0x55
0x58
‐
0x5F
0x82
AND direc
it to carry flag
ANL direct,#data
ANL direct,A
CJNE @Ri,#data
CJNE A,#datare
CJNE A,d
ectre
CJNE R
,#da
ar
CLR A
AND i
med
ate data to direct byte
ccumulator to direct byte
0x53
0x52
C
e immediate to ind. and jump if not equal
0xB6
‐
0xB7
ompare immediate to A and jump if not equal
Compare direct byte to A and jump if not equal
Compare immediate to reg.
and jump if not equal
Clear accumulator
0xB4
0xB5
0xB8
‐
0xBF
0xE4
CLR
t
Clear direct bit
0xC2
CLR C
Clear carry flag
0xC3
CPL A
Complement accumulator
0xF4
CPL bit
Complement direct bit
0xB2
CPL C
Complement carry flag
0xB3
DA A
Decimal adjust accumulator
Decrement indirect RAM
Decrement accumulator
0xD4
DEC @Ri
0x16
‐
0x17
0x14
DEC A
DEC direct
DEC Rn
Decrement direct byte
0x15
Decrement register
0x18
‐
0x1F
Sep., 2014, Version 0.6 (Preliminary)
48
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
DIV A,B
Divide A by B
0x84
0xD5
1
3
2
1
1
2
1
1
3
2
1
3
2
2
2
3
3
1
2
2
1
2
2
2
1
2
3
2
2
2
3
3
2
1
2
1
1
6
5
4
3
1
3
2
5
5
3
5
5
3
4
4
4
4
2
3
2
2
3
2
2
1
2
3
3
2
2
3
3
2
1
3
5
4
DJNZ direct,rel
DJNZ Rn,rel
INC @Ri
Decrement direct byte and jump if not zero
Decrement register and jump if not zero
Increment indirect RAM
0xD8
‐
0xDF
0x06
‐
0x07
0x04
INC A
Increment accumulator
INC direct
Increment directbyte
0x05
INC Rn
Increment register
0x08
‐
0x0F
0xA3
INC DPTR
Increment data pointer
JB bit,rel
Jump if direct bit is set
0x20
JBC bit,directre
JC rel
Jump if direct bit is set and clear bit
Jump if carry flag is set
0x10
0
0
JMP@A+DPTR
JNB bit,rel
Jump indirect relative to the DPTR
Jumpifdirectbitisnotset
0x73
0
30
JNC
Jump if carry flag is not set
Jump if accumulator is not zero
Jump if accumulator is zero
Long subroutine
call
0x50
JNZ rel
0x70
JZ rel
0x60
LCALL addr16
LJMP addr16
MOV A,@Ri
MOV bit,C
MOV @Ri,#data
MOV @Ri,A
MOV @Ri,direct
MOV A,#data
MOV A,direct
MOV A,Rn
MOV C,bit
MO
direc
,#data
OV direct,@Ri
MOV direct,A
MOV direct,Rn
MOV direct1,direct2
0x12
Long jump
0x02
Move indirect RAM to
ator
Move carry flag
o dire
bit
Move imm
diate data to indirect RAM
Move
cumula
or to indirect RAM
M
dire
t byte to indirect RAM
mmediate data to accumulator
Move direct byte to accumulator
Move register to accumulator
Move direct bit to carry flag
Move immediate data to direct byte
Move indirect RAM to direct byte
Move accumulator to direct byte
Move register to direct byte
Move direct byte to direct byte
0xE6
‐
0xE7
0x92
0x76
‐
0x77
0xF6
‐
0xF7
0xA6
‐
0xA7
0x74
0xE5
0xE8
‐
0xEF
0xA2
0x75
0x86
‐
0x87
0xF5
0x88
‐
0x8F
0x85
MOV DPTR,#data16
Load 16
‐
bit constant in
to active DPTR
0x90
MOV Rn,#data
MOV Rn,A
Move immediate data to register
Move accumulator to register
Move direct byte to register
0x78
‐
0x7F
0xF8
‐
0xFF
0xA8
‐
0xAF
0x93
MOV Rn,direct
MOVC A,@A+DPTR
Move code byte relative to DPTR to accumulator
MOVC A,@A+PC
Move code byte relative to PC to accumulator
0x83
Sep., 2014, Version 0.6 (Preliminary)
49
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
MOVX @DPTR,A
MOVX @Ri,A
MOVX A,@DPTR
MOVX A,@Ri
MUL A,B
Move A to external
SRAM (16
‐
bitaddress)
Move A to external RAM
(8
‐
bitaddress)
Move external RAM (16
‐
bitaddress) to A
Move external RAM (8
‐
bitaddress) to A
Multiply A and B
0xF0
0xF2
‐
0xF3
0xE0
1
1
1
1
1
1
2
2
1
1
2
2
3
2
2
1
1
1
1
1
1
1
2
2
1
2
2
1
1
1
2
1
1
3
2
1
2
1
2
1
2
2
1
3
2
2
1
2
2
3
2
3
4
4
1
1
1
1
1
3
3
2
2
2
1
1
3
3
2
3
3
2
2
2
0xE2
‐
0xE3
0xA4
NOP
No operation
0x00
ORL direct,A
ORL A,#data
ORL A,@Ri
ORL A,direct
ORL A,Rn
ORL C,/bit
ORL C,bit
OR accumulator to direct byte
0x42
OR immediate data to accumulator
OR indirect RAM to accumulator
OR direct byte to accumulator
0x44
0x46
‐
0x47
0x45
OR register to accumulator
0x4
x4F
0xA0
OR complement of direct bit to carry
OR direct bit to carry flag
0
72
ORL direct,#data
POP direct
PUSH direct
RET
OR immediate data to direct byte
Pop direct byte from internal
ram stac
Push direct byte on
to internal
ram stac
Return from subroutine
0x43
0xD0
0xC0
0x22
RETI
Return from interrupt
0x32
RL A
Rotate accumulator left
0x23
RLC A
Rotate accumulat
r left
rough carry
Rotate acc
mulator right
0x33
RR A
0x03
RRC A
Rotate
ccu
ul
tor right through carry
S
rry
lag
0x13
SETB C
0xD3
SETB bit
ct bit
0xD2
SJMP rel
Short jump (relative address)
0x80
SUBB A,@Ri
SUBB A,d
ect
SU
A,#
ata
UB
A,Rn
SWAP A
Subtract indirect RAM from A with borrow
Subtract direct byte from A with borrow
Subtract immediate data from A with borrow
Subtract register from A with borrow
Swap nibbles within the accumulator
Exchange indirect RAM with accumulator
Exchange direct byte with accumulator
Exchange register with accumulator
Exchange low
‐
order nibble indirect RAM with A
ExclusiveOR immediate data to direct byte
ExclusiveOR immediate data to accumulator
ExclusiveOR indirect RAM to accumulator
ExclusiveOR direct byte to accumulator
0x96
‐
0x97
0x95
0x94
0x98
‐
0x9F
0xC4
XCH A,@Ri
XCH A,direct
XCH A,Rn
XCHD A,@Ri
XRL direct,#data
XRL A,#data
XRL A,@Ri
XRL A,direct
0xC6
‐
0xC7
0xC5
0xC8
‐
0xCF
0xD6
‐
0xD7
0x63
0x64
0x66
‐
0x67
0x65
Sep., 2014, Version 0.6 (Preliminary)
50
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
XRL A,Rn
ExclusiveOR register to accumulator
0x68
‐
0x6F
1
2
1
3
XRL direct,A
ExclusiveOR accumulator to direct byte
Table 10.1 Instruction set sorted by alphabet
0x62
10.4 Interrupt handler
This section describes 8051 external interrupts and their functionality. For peripheral related interrupts, please refer to an
appropriate peripheral section. The external interrupts symbol is shown in figure above. And the pins functionality is described in
the following table. All pins are one directional. There are no three-state output pins and internal signals.
Name
ACTIVE
TYPE DESCRIPTION
int0(P3.2) low/falling Input External
interrupt 0 line
int1(P3.3) low/falling Input External
interrupt 1 line
int2(P0.7)
int3*(P1.2)
int4*(P1.3)
RFINT
low
low
low
failing
failing
Input External
interrupt 2 line
Input External
interrupt 3 line
Input External
interrupt 4 lin
KEYINT
Table 10.2
External interrupts pins desc
Note1
:
Number of external interrupt sources depends on core configuratio
. It
be adjusted upon request. The int0 & int1
sources are always available. Please check your configuration.
Note2
:
*pin functionality depends on compare / capture unit.
10.4.1 FUNCTIONALITY
All 8051 IP cores have implemented two levels interrupt pri
ty c
trol. Each external interrupt can be in high or low level
priority group by setting or clearing a bit in the IP(0xB8), EIP
xF8
, and DEVICR(0xCF) registers. External interrupt pins are
activated at low level or by a falling edge. Interrupt reques
mpled each system clock at the rising edge of CLK.
Interrupt flag
Function
Active level/edge
Flag resets
Vector
1
Natural priority
IE0
TF0
IE1
TF1
TI & RI
TF2
Reserved
INT2F
INT3F
INT4F
RFINT
KEYINT
WDIF
I2CMIF
I2CSI
PIIF
Device pin INT0
Low/falling
Hardware
Hardware
Hardware
Hardware
Software
Software
Software
Hardware
Hardware
Hardware
Software
Software
Software
Software
Software
0x03
0x0B
0x13
0x1B
0x23
0x2B
0x33
0x3B
0x43
0x4B
0x53
0x5B
0x63
0x6B
0x73
1
2
3
4
5
6
7
8
Internal, Timer 0
Device pin INT1
Internal, Timer 1
Interrupt, UART
Interrupt, Ti
Reserved
Devic
pin INT2
Devic
pin I
T3
Device
in INT4
nterrupt, RFINT
I
terr
pt, KeyINT
nternal, Watchdog
Internal, I2C MASTER MODULE
Internal, DI2CS/
Internal, SPI
–
Low/falling
–
–
–
–
Low
Low
Low
-Falling
9
10
11
12
13
14
15
-Falling
–
–
–
rved
R
served
Reserved
Reserved
–
–
Hardware
Hardware
0x7B
0x83
16
17
Table10.3
8051 interrupts summary
1- This
is a default location when IRQ_INTERVAL = 8, in other case is equal to (IRQ_INTERVAL* n ) + 3, when n = (natural Priority – 1)
Each interrupt vector can be individually enabled or disabled by setting or clearing a corresponding bit in the IE(0xA8),
EIE(0xE8), DEVICR(0xCF). The IE contains global interrupt system disable(0) / enable(1) bit called EA.
IE register
(0xA8)
Address/Name R/W Bit
7 Bit
6 Bit
5 Bit
4 Bit
3 Bit
2 Bit
1 Bit
0
A8h
IE
R/W EA
–
ET2 ES0 ET1 EX1 ET0 EX0
Sep., 2014, Version 0.6 (Preliminary)
51
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
Reset
0
0
0
0
0
0
0
0
EA
:
Enable global interrupts
EX0
:
Enable INT0 interrupts
ET0
:
Enable Timer 0 interrupts
EX1
:
Enable INT1 interrupts
ET1
:
Enable Timer 1 interrupts
ES
:
Enable UART interrupts
ET2
:
Enable Timer 2 interrupts
All of bits that generate interrupts can be set or cleared by software, with the same result as if
had been set or
cleared by hardware. That is, interrupts can be generated or pending interrupts can be cancelled by so
twar
The exceptions of
this rule are the request flags IE0 and lE1. If the external interrupts 0 or 1 are programmed to be le
el ac
vat
d, IE0 and lE1 are
controlled by the external source via pin INT0 and INT1, respectively. Thus, writing a one to these bits will not set the request
flag IE0 and/or lE1. The same exception is related to INT2F, INT3F, INT4F, RFINTF, and KEYINTF
–
external interrupts number
2, 3, 4, 5, 6.
IP register
(0xB8)
Address/Name R/W Bit
7 Bit
6 Bit
5 Bit
4 Bi
Bit
Bit 1
Bit 0
B8h
IP
Reset
R/W
–
–
PT2
0
PS
0
P
X1 PT0 PX0
0
0
0
0
0
PX0
:
INT0 priority level control (at 1-high-level)
PT0
:
Timer 0 priority level control (at 1-high-level)
PX1
:
INT1 priority level control (at 1-high-level)
PT1
:
Timer 1 priority level control (at 1-high-level)
PS
:
UART priority level control (at 1-high-level)
PT2
:
Timer 2 priority level control (at 1-high-level)
TCON register
(0x88)
Address/N
/W Bit
7 Bit
6 Bit
5 Bit
4 Bit
3 Bit
2 Bit
1 Bit
0
88h
TCON
R
set
R/W TF1 TR1 TF0 TR0 IE1
IT1
0
IE0
0
IT0
0
0
0
0
0
0
IT0
:
INT0 level (at 0) /
dge (
t 1) sensitivity
IT1
:
INT1 level (at 0)
edge (at 1) sensitivity
IE0
:
INT0 interru
ag
Cleared
y h
rdware when processor branches to interrupt routine
IE1
:
INT1 interrupt flag
Cle
by hardware when processor branches to interrupt routine
TF0
:
Tim
0 interrupt (overflow) flag
Cleared by hardware when processor branches to interrupt routine
TF1
:
Timer 1 interrupt (overflow) flag
Cleared by hardware when processor branches to interrupt routine
SCON register
(0x98)
Address/Name R/W Bit
7 Bit
6 Bit
5 Bit
4 Bit
3 Bit
2 Bit
1 Bit
0
98h
SCON
Reset
R/W SM0 SM1 SM2 REN TB8
RB8
0
TI
0
RI
0
0
0
0
0
0
Sep., 2014, Version 0.6 (Preliminary)
52
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
RI
:
UART receiver interrupt flag
TI
:
UART transmitter interrupt flag
EIE register
(0xE8)
Address/Name R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
E8h
EIE
Reset
EI2CS
ESPI
0
R/W
EI2CM EWDI EKEYINT ERFINT EINT4 EINT3 EINT2
0
0
0
0
0
0
0
EINT2
:
Enable INT2 interrupts
EINT3
:
Enable INT3
EINT4
:
Enable INT4
ERFINT
:
Enable RF INT
EKEYINT
:
Enable KEYINT
EWDI
:
Enable Watchdog interrupts
EI2CM
:
Enable I2C MASTER MODULE interrupts
EI2CS
:
Enable DI2CS interrupts
ESPI
:
Enable SPI MODULE interrupts
EIP register
(0xF8)
Address/Name R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit
Bit 2
Bit 1
Bit 0
F8h
EIP
Reset
PI2CS
PSPI
0
R/W
PI2CM PWDI PKE
INT PRFINT PINT4 PINT3 PINT2
0
0
0
0
0
0
0
PINT2
:
INT2 priority level control (at 1-high-level)
PINT3
:
INT3/Compare 0 priority level control (at 1-high-lev
PINT4
:
INT4/Compare 1 priority level control (at 1-high-le
PRFINT
:
RFINT priority level control (at 1-high-level
PKEYINT
:
KEYINT priority level control (at 1-high-l
vel)
PWDI
:
Watchdog priority level control (at 1-high-level)
PI2CM
:
I2C MASTER MODULE priority level
ntrol (at 1-high-level)
PI2CS
:
I2C MODULE priority level contro
at 1
high-level)
PSPI
:
SPI MODULE priority level control (at 1-high-level)
EIF register
(0x91)
Address/
ame R/W Bit
7 Bit
6 Bit
5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
91h
EIF
eset
I2CSF
SPIF
0
R/W
I2CMF
0
–
KEYINTF RFINTF INT4F
INT3F INT2F
0
0
0
0
0
0
INT2F
:
INT2 int
upt
lag
Should
e cleared by external hardware when processor branches to interrupt routine. This bit is a copy of INT2 pin
updated every CLK
eriod. It cannot be set by software.
INT3F*
:
T3/Compare 0 interrupt flag
Sho
be cleared by external hardware when processor branches to interrupt routine. t cannot be set by software.
INT4F*
:
INT4/Compare 1 interrupt flag
Should be cleared by external hardware when processor branches to interrupt routine.
It cannot be set by software.
RFINTF
:
RFINT interrupt flag
Must be cleared by software writing 0x08 when controlled by RFINT.
KEYINTF
:
KEYINT interrupt flag
Must be cleared by software writing 0x10 when controlled by KEYINT.
I2CMIF
:
I2C MASTER MODULE interrupt flag
. It must be cleared by software writing 0x40. It cannot be set by software
I2CSIF
:
I2C MODULE interrupt flag
SPIIF
:
SPI MODULE interrupt flag
Software should determine the source of interrupt by checking both modules
’
interrupt related bits. It must be cleared by
software writing 0x80. It cannot be set by software.
Sep., 2014, Version 0.6 (Preliminary)
53
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
10.5 Reset source
Reset circuitry allows A8105 to be easily placed in a predefined defau
t condition. LVD, Reset, POR, and Watchdog signal will
reset 8153 when they happen.
Power o
Reset
REGI
Internal
Reset
RESETN
eset circuit
w voltage
detecot
REGI
Watchdog timer
Figure 10.2 Reset source
RSFLAG: Reset Fl
g(0xBA):
Address/Name R/W Bit
7 Bit
6 Bit
5 Bit
4 Bit
3 Bit
2
Bit 1
Bit 0
BAh
RSFLAG
R
–
–
–
–
–
LVDF RESETNF PORF
Reset
0
0
0
0
0
0
0
1
Write any data to RSFLAG to clear all bits.
PORF
(power-on reset flag)
= 1: Occurred Power-on Reset
= 0: No Power-on Reset
RESETNF
(resetn flag)
= 1: Occurred ResetN reset
= 0: No ResetN resetno resetn reset
LVD
(Low voltage detect) flag
= 1: Occurred Low Voltage Reset
Sep., 2014, Version 0.6 (Preliminary)
54
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
= 0: No Low Voltage reset
Please refer the figure 10.3 and 10.4 for the timing diagram for stable power o
t signal and internal behavior of CPU.
XOUT
REGI
RST1
T
VIH
RESETN
2046 Crystal Clock Cycles
R
T1
T
: According to RESETN’s RC delay (standard module is about 50ms)
Figure 10.3 Timing Diagram for stable power to the release of RESETN
Sep., 2014, Version 0.6 (Preliminary)
55
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
CPU clock
RESETN
RST2
T
VIH
2046 Crystal Clock Cycles
startup
T
CPU OP Code Fetch
CPU Sta
Running
CPU Stop Running
RST2
T
: 2 Crystal Clock Cycles (min)
: 2046 Crystal Clock Cycles + RESETN’s RC delay (standard mod
le is about 50ms)
startup
T
Figure 10.4 Timing Diagram for
ESETN control sequence
10.6 Clock source
A8105 has three clock source, crystal osc
lla
or (pin 13,14/ Xi, XO), RTC crystal (pin 1,2/ P3.6, P3.7/ RTC_I, RTC_O) and
internal RC oscillator. In the MCU part (digi
l p
ipherals ), user choices the suitable clock source by power consumptions and
performance. In the RF part, the cloc
rce only comes from XO..
Sep., 2014, Version 0.6 (Preliminary)
56
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
RF
Clock
Generator
XO
0
1
CLKRUN
RTC
IRC
1
0
/1
/2
LK
MCU
Core
CLKCTRL
CLKSEL =7
RTCS
/4
CLKPMM
/8
CLKSEL
/16
/32
/64
PMM STOP
WOR/TWOR
timer
CLK
L = 0 ~6
Figure 10
ole chip clock
Sep., 2014, Version 0.6 (Preliminary)
57
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
11. I/O Ports
A8105 has two type of digitla I/O Pins. One is 24 pins and the other is 28 pins. In 24pins, there are separated to 3 Ports (Port0,
Port1 and Port3) and each of the Port pin can be defined as general-purpose I/O (GPIO) or peripheral I/O signals connected to
the timers, UART, I2C and SPI functions. In 28pins, there are extra 4pins of Port2 and they are Port2.0 ~ Port2.3. Thus, each
pin can also be used to wake A8105 up from sleep mode. User can select each pin function by setting register. Each port has
itself port register like P0 (0x80), P1 (0x90), P2(0xA0) and P3 (0xB0) that are both byte addressable and bit addressable. When
reading, the logic levels of the Port
’
s input pins are returned. Each port has three registers to setting Pull-up (PUN),
Output-enable (OE) and Wake-up enable (WUN). As shown the bellow block diagram, Fig. 11.1. Unused I/O pins should have a
defined level and not be left floating. One way to do this is to leave the pin unconnected and configure the pin as a
general-purpose I/O input with pull-up resistor.
PUN
DO
P
OE
DI
KEYINT
WUN
Figure
1.1 Ports
I/O block diagram
OE
0
0
P
N
P
1
HZ
DO
DI
1
INH
DO
1
X
1
Tab
1 OE and PUN setting and Output(P) and Input(DI)
WUN
0
1
KEYINT
Enable
Disable
Table 11.2 WUN setting and KEYINT source
11.1 FUNCTIONALITY
It h
hree 8-bit full bi-directional ports, P0, P1 and P3. Each port bit can be individually accessed by bit addressable
instruction
Address/Name R/W Bit
7 Bit
6 Bit
5 Bit
4 Bit
3 Bit
2 Bit
1 Bit
0
80h
R/W
P0
Reset
0
0
0
0
0
0
0
0
Port 0 register
Address/Name R/W Bit
7 Bit
6 Bit
5 Bit
4 Bit
3 Bit
2 Bit
1 Bit
0
90h
R/W
P1
Sep., 2014, Version 0.6 (Preliminary)
58
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
Reset
0
0
0
0
0
0
0
0
Port 1 register
Address/Name R/W Bit
7 Bit
6 Bit
5 Bit
4 Bit
3 Bit
2 Bit
1 Bit
0
A0h
R/W
P2
Reset
0
0
0
0
0
0
0
0
Port 2 register
Address/Name R/W Bit
7 Bit
6 Bit
5 Bit
4 Bit
3 Bit
2 Bit
1 Bit
0
B0h
R/W
P3
Reset
0
0
0
0
0
0
0
0
Port 3 register
Read and write accesses to the I/O port are performed via their corresponding SFRs P0(0x80), P1(0x90), and P3(0xB0).
Some port
‐
reading instructi
ons read the data register and others read the port’s pin
The “Read
‐
Modify
‐
Write” instructions are
directed to the data registers and are shown below. All the other instructions used to re
d a port e
xclusively read the port’s pin.
Instruction
ANL
Function description
Logic AND
ORL
Logic OR
XRL
JBC
CPL
Logic eXclus
ve OR
Jump if b
t is s
and clear
Complement bit
INC, DEC
DJNZ
Inc
, decrement byte
De
t and jump if not zero
MOV Px.y, C
Move carry bit to y of port x
CLR Px.y
SETB Px.y
Table1
Cle
r bit y of port x
Set bit y of port x
Read-modify-write instructions
According the Table 11.1, all Port pins can be co
figured as Output, Input with the pull-up resistor (around
100
Kohm) or Input.
Please refer the following truth table
w every function setting. When OE=1, this pin is configured as Output. Otherwise OE
=0, this pin is configured as Input. U
set PUN =1 or 0 depending on application. When OE =0, PUN=0 is recommended
for saving power.
All Port pins can wake A8105 up w
en WUEN=0 and configured GPIO. All Port pins
’
WUN signals connect one OR gate to
KEYINT
. It means pin wake up function needs
KEYINT
ISR to take care this interrupt event.
Address/Name R/W Bit
7 Bit
6 Bit
5 Bit
4 Bit
3 Bit
2 Bit
1 Bit
0
D1h
P0OE
R/W
Reset
0
0
0
0
0
0
0
0
Port 0 Output Enable Register
Address/Name R/W Bit
7 Bit
6 Bit
5 Bit
4 Bit
3 Bit
2 Bit
1 Bit
0
D2h
P0PUN
R/W
Reset
0
0
0
0
0
0
0
0
Port 0 Pull Up Register
Address/Name R/W Bit
7 Bit
6 Bit
5 Bit
4 Bit
3 Bit
2 Bit
1 Bit
0
D3h
P0WUN
R/W
Reset
1
1
1
1
1
1
1
1
Port 0 Wake Up Enable Register
Sep., 2014, Version 0.6 (Preliminary)
59
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
Address/Name R/W Bit
7 Bit
6 Bit
5 Bit
4 Bit
3 Bit
2 Bit
1 Bit
0
D9h
P1OE
R/W
Reset
0
0
0
0
0
0
0
0
Port 1 Output Enable Register
Address/Name R/W Bit
7 Bit
6 Bit
5 Bit
4 Bit
3 Bit
2 Bit
1 Bit
0
DAh
P1PUN
R/W
Reset
0
0
0
0
0
0
0
0
Port 1 Pull Up Register
Address/Name R/W Bit
7 Bit
6 Bit
5 Bit
4 Bit
3 Bit
2 Bit
1 Bit
0
DBh
P1WUN
R/W
Reset
1
1
1
1
1
1
1
1
Port 1 Wake Up Enable Register
Address/Name R/W Bit
7 Bit
6 Bit
5 Bit
4 Bi
it 2
Bit 1
Bit 0
A1h
P2OE
R/W
Reset
0
0
0
0
0
0
0
0
Port 2 Output E
able
egister
Address/Name R/W Bit
7 Bi
5 Bit
4 Bit
3 Bit
2 Bit
1 Bit
0
A2h
P2PUN
R/W
Reset
0
0
0
0
0
0
0
0
Port 2 Pull Up Register
Address/Name R/W Bit
7 Bit
6 Bit
5 Bit
4 Bit
3 Bit
2 Bit
1 Bit
0
A3h
P2WUN
/W
Reset
1
1
1
1
1
1
1
1
Port 2 Wake Up Enable Register
Address/Name R/W Bit
7 Bit
6 Bit
5 Bit
4 Bit
3 Bit
2 Bit
1 Bit
0
E1h
P3OE
R/W
Reset
0
0
0
0
0
0
0
0
Port 3 Output Enable Register
Address/Name R/W Bit
7 Bit
6 Bit
5 Bit
4 Bit
3 Bit
2 Bit
1 Bit
0
E2h
P3PUN
R/W
Reset
0
0
0
0
0
0
0
0
Port 3Pull Up Register
Address/Name R/W Bit
7 Bit
6 Bit
5 Bit
4 Bit
3 Bit
2 Bit
1 Bit
0
E3h
P3WUN
R/W
Reset
1
1
1
1
1
1
1
1
Port 3 Wake Up Enable Register
Sep., 2014, Version 0.6 (Preliminary)
60
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
IOSEL Register
(0xBB)
Address/Name R/W Bit
7 Bit
6 Bit
5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
BBh
IOSEL
Reset
R/W
–
RADCIOS[1:0]
RTCIOS BBIOS
–
I2CIOS URT0IOS
0
0
0
0
0
0
0
0
RADCIOS1 (RC-ADC1 I/O select)
[0]: Disable RC-ADC1 analog input.
[1]: P1.0, P1.1, P1.2, P1.3 are selected for RC-ADC0 analog input pin.
RADCIOS0 (RC-ADC0 I/O select)
[0]: Disable RC-ADC0 analog input.
[1]: P0.0, P0.1, P0.2, P0.3 are selected for RC-ADC0 analog input pin.
RTCIOS (Real-time clock I/O select)
[1]: The pad is for RTC clock
[0]: The pad is normal I/O
BBIOS (Base band I/O select)
[1]: P0.7, P1.2, P1.3 are selected for
RF GPIO1,GPIO2,CKO function pin
[0]: P0.7, P1.2, P1.3 are normal I/O
I2CIOS (I2C I/O select)
[1]: The pad is selected for I2C (open drain I/O)
[0]: The pad is normal I/O
UARTIOS (UART0 I/O select)
[1]: Port 3.0 and Port3.1 are selected for UART0 mode0 (open drain I/O)
[0]: Port 3.0 and Port3.1 are normal I/O
ADCCH Register
(0xBC)
Address/Name R/W
Bit 7
Bit
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
BCh
ADCCH
Reset
R/W
—
0
—
0
—
0
— ADCCH3
ADCCH2 ADCCH1 ADCCH0
0
0
0
0
0
ADCCH[3:1] (ADC I/O select)
[000]: Select P3.2 as ADC analog in
[001]: Select P3.3 as ADC analog inp
[010]: Select P3.4 as ADC an
log input.
[011]: Select P3.5 as ADC ana
og in
ut.
[100]: Select P1.6 as ADC analog input.
[101]: Select P1.7 as ADC ana
og input.
[110]: Select P3.0 as
DC analog input.
[111]: Select P3.1
s ADC analog input.
ADCCCH0
[1]: Enable AD
an
og input
[0]: Disa
ADC
nalog input
11.2 Key interrupt
User can use P0, P1 or P3 port as key input and meanwhile these key are clicked to event a key interrupt to wake up A8105 or
enter key process flow. It is a helpful use to design a remote controller and low power consumption with power saving mode
setting. The KEY INT vector is located on 0x5B. User can put an interrupt service routine in 0x5B.
The KEY interrupts can wake up A8105 back to normal mode in PM1 and PM2. In PM3, Port 3.2~Port 3.5 and RESETN PIN will
reset A8105 and A8105 need to initial all needed peripherals and take care key interrupt event.
Sep., 2014, Version 0.6 (Preliminary)
61
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
p0wun[0]
p0[0]
p0wun[7]
p0[7]
p1wun[0]
p1[0]
KEYINT
p1wun[7]
p1[7]
p3wun[0]
p3[0]
p3wun[7]
p3[7]
Figur
11.2 Key
interrupt block diagram
Sep., 2014, Version 0.6 (Preliminary)
62
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
12 Timer0,1 and Timer2
A8105 contains three 16-bit timer/counters, Timer 0, Timer 1 and Timer 2. Timer 0 and Timer 1 in the
“
timer mode
“
, timer
registers are incremented every 4/12/CLK periods depends on CKCON (0x8E) setting, when appropriate timer is enabled. In
the
“
counter mode
”
the timer registers are incremented every falling transition on theirs corresponding input pins: T0 or T1. The
input pins are sampled every CLK period.
The Timer 2 is one of the most powerful peripheral units of the core. It can be used for all kinds of digital signal generation
and event capturing like pulse generation, pulse width modulation, pulse width measuring etc.
12.1 Timer 0 & 1 PINS DESCRIPTION
The pins functionality is described in the following table. All pins are one directional.
PIN
ACTIVE TYPE DESCRIPTION
T0(P3.4)
GATE0(P3.2) High
T1(P3.5)
GATE1(P3.3) High
Falling
Input
Input
Input
Input
Timer 0 clock line
Timer 0 clock line gate control
Timer 1 clock line
Falling
Timer 1clock line gate cont
ol
Table12.1 Timer 0, 1 pins description
12.2 Timer 0 & 1 FUNCTIONALITY
12.2.1 OVERVIEW
Timer 0 and Timer 1 are fully compatible with the standard 8051 timers
Each timer consists of two 8-bit registers TH0
(0x8C), TL0 (0x8A), TH1 (0x8D), TL1 (0x8B). Timers 0, 1 work in the same four modes. The modes are described below.
M1 M0 Mode Function
description
0
0
1
1
0
1
0
1
0
1
2
3
THx operates as 8-bit timer/counter w
de by 32 prescaler served by lower 5-bit of TLx.
16-bit timer/counter. THx and TLx are c
ed.
TLx operates as 8-bit timer/coun
er with 8-bit auto-reload by THx.
TL0 is configured as 8-bit time
/coun
er controlled by the standard Timer 0 bits. TH0 is an 8-bit timer
controlled by the Timer 1 controls bits. Timer 1 holds its count.
Table12.2 Timer 0 and 1 modes
12.2.2 Timer 0 & 1 Registers
TMOD register
(0x89)
Address/Name
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
89h
TMOD
R/W GATE1
CT
M1
M0 GATE0 CT
M1
M0
Timer 1 control bits
Timer 0 control bits
eset
0
0
0
0
0
0
0
0
GATE
:
Gating c
trol
=1, Timer x
n
bled while GATEx pin is high and TRx control bit is set.
=0, Tim
x e
abled while TRx control bit is set.
CT
:
Counter or
mer select bit
=1,
nter mode, Timer x clock from Tx pin.
=0,
mer mode, internally clocked.
M[1
:
0]
:
Mode select bits
TCON register
(0x88)
Address/Name R/W Bit
7 Bit
6 Bit
5 Bit
4 Bit
3 Bit
2 Bit
1 Bit
0
88h
TCON
Reset
R/W TF1 TR1 TF0 TR0 IE1
IT1
0
IE0
0
IT0
0
0
0
0
0
0
TR0
:
Timer 0 run control bit
=1, enabled.
=0, disabled.
TR1
:
Timer 1 run control bit
Sep., 2014, Version 0.6 (Preliminary)
63
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
=1, enabled.
=0, disabled.
TF0
:
Timer 0 interrupt (overflow) flag.
Cleared by hardware when processor branches to interrupt routine.
TF1
:
Timer 1 interrupt (overflow) flag.
Cleared by hardware when processor branches to interrupt routine.
CKCON register (0x8E)
Address/Name R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3 Bit 2 Bit 1 Bit 0
8Eh
CKCON
R/W WD1
WD0 T2M T1M T0M
MD2 MD1 MD0
Reset
0
0
0
0
0
0
0
0
T2M
:
This bit controls the division of the system clock that drives Timer 2.
=1, Timer 2 uses a divided-by-4 of the system clock frequency.
=0, Timer 2 uses a divided-by-12 of the system clock frequency.
T1M
:
This bit controls the division of the system clock that drives Timer 1.
=1, Timer 1 uses a divided-by-4 of the system clock frequency.
=0, Timer 1 uses a divided-by-12 of the system clock frequency.
T0M
:
This bit controls the division of the system clock that drives Timer 0.
=1, Timer 0 uses a divided-by-4 of the system clock frequency.
=0, Timer 0 uses a divided-by-12 of the system clock frequency.
IE register (0xA8)
Address/Name R/W Bit
7 Bit
6 Bit
5 Bit
4 Bit
3 Bit
2 Bit
1 Bit
0
A8h
IE
Reset
R/W EA
0
2
0
ES
0
ET1 EX1 ET0 EX0
0
0
0
0
0
EA
:
Enable global interrupts.
ET0
:
Enable Timer 0 interrupts.
ET1
:
Enable Timer 1 interrupts.
IP register (0xB8)
Address/Name
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
B8h
IP
Rese
–
–
PT2
0
PS
0
PT1
0
PX1
0
PT0
0
PX0
0
0
0
PT0
:
Timer 0 priority le
el control (at 1-high level)
PT1
:
Timer 1 priority le
el co
rol (at 1-high level)
Timer 0
1 re
ated bits that generate interrupts can be set or cleared by software, with the same result as if they had been
set or cleared by ha
dware. That is, interrupts can be generated or pending interrupts can be cancelled by software.
Interrupt flag
Function
Active level/edge
Flag resets
Vector Natural
priority
TF0
TF1
Internal, Timer 0
Internal, Timer 1
–
–
Hardware
Hardware
0x0B
0x1B
2
4
Table12.3
Timer 0, 1 interrupts
12.2.3 Timer 0
–
Mode 0
In this mode, the Timer 0 register is configured as a 13-bit register. As the count rolls over from all 1s to all 0s. Timer 0
interrupt flag TF0 is set. The counted input is enabled to the Timer 0 when TCON.4 = 1 and either TMOD.3 = 1 or GATE0 = 1.
(Setting TMOD.3 = 1 allows the Timer 0 to be controlled by external input GATE0, to facilitate pulse width measurement). The
13-bit register consists of all 8-bit of TH0 and lower 5 bits of TL0.The upper 3 bits of TL0 are indeterminate and should be
ignored.
Sep., 2014, Version 0.6 (Preliminary)
64
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
Figure12.1 Timer/Counter
0, Mode 0
:
13-Bit Timer/Counter
12.2.4 Timer 0
–
Mode 1
Mode 1 is the same as Mode 0, except that the timer register is running with al
16 bits. Mode 1 is shown in figure below.
Figure
.2 Timer/Counter
0, Mode 1
:
16-Bit Timer/Counter
12.2.5 Timer 0
–
Mode 2
Mode 2 configures the timer reg
as an 8-bit counter (TL0) with automatic reloads, as shown in figure below. Overflow
from TL0 not only sets TF0, b
t also reloads TL0 with the contents of TH0, which is loaded by software. The reload leaves TH0
unchanged.
Figure12.3 Timer/Counter
0, Mode 2
:
8-Bit Timer/Counter with Auto-Reload
Sep., 2014, Version 0.6 (Preliminary)
65
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
12.2.6 Timer 0
–
Mode 3
Timer 0 in Mode 3 establishes TL0 and TH0 as two separate counters. The logic for Mode 3 on Timer 0 is shown in
figure below. TL0 uses the Timer 0 control bits
:
C/T, GATE, TR0, GATE0 and TF0. TH0 is locked into a timer function and use
the TR1 and TF1 flag from Timer1 and controls Timer1 interrupt. Mode 3 is provided for applications requiring an extra 8-bit
timer/counter. When Timer 0 is in Mode 3, Timer 1 can be turned off by switching it into its own Mode 3, or can still be used by
the serial channel as a baud rate generator, or in any application where interrupt from Timer 1 is not required.
Figure12.4 Timer/Counter
0, Mode 3
:
Two 8-Bit Timers/Counters
12.2.7 Timer 1
–
Mode 0
In this Mode, the Timer1 register is
onfi
ured as a 13-bit register. As the count rolls over from all 1s to all 0s, Timer1
interrupt flag TF1 is set. The counted input i
en
bled to the Timer1 when TCON.6 = 1 and either TMOD.6 = 0 or GATE1 = 1.
(Setting TMOD.7 = 1 allows the Tim
e controlled by external input GATE1, to facilitate pulse width measurements). The
13
‐
bit register consists of all 8 bits o
nd the lower 5 bits of TL1. The upper 3 bits of TL1 are indeterminate and should be
ignored.
Figure12.5 Timer/Counter 1, Mode 0
:
13-Bit Timers/Counters
12.2.8 Timer 1
–
Mode 1
Mode 1 is the same as Mode 0, except that timer register is running with all 16 bits. Mode 1 is shown in figure below.
Sep., 2014, Version 0.6 (Preliminary)
66
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
Figure12.6 Timer/Counter
1, Mode 0
:
16-Bit Timers/Counter
12.2.9 Timer 1
–
Mode 2
Mode 2 configures the
timer register as an 8-bit counter (TL1) with automatic re
oads, as shown in figure below.
Overflow from TL1 not only sets TF1, but also reloads TL1 with the contents of TH
which is loaded by software. The reload
leaves TH1 unchanged.
Figure12
er/Counter 1, Mode 2
:
8-Bit Timer/Counter with Auto-Reload
12.2.10 Timer 1
–
Mode 3
Timer 1 in Mode 3 is he
d coun
ing. The effect is the same as setting TR1=0.
12.3 Timer2 PINS DESCRIPTION
The Timer 2 pins functionality is described in the following table. All pins are one directional.
PIN
ACTIVE TYPE
DESCRIPTION
t2
(P1.0)
falling
INPUT Timer
2 clock line
t2ex
(P1.1)
high
INPUT Timer
2 control
Table12.4 Compare/Capture pins description
12.4 Timer2 FUNCTIONALITY
12.4.1 OVERVIEW
Timer 2 is fully compatible with the standard 8052 Timer 2. It is up counter. Totally five SFRs control the Timer 2 operation:
TH2/TL2(0xCD/0xCC) counter registers, RCAP2H/RCAP2L (0xCB/0xCA) capture registers and T2CON(0xC8) control register.
Timer 2 works in the three modes selected by T2CON bits as shown in table below.
RCLK, CPRL2 TR2 Function
description
Sep., 2014, Version 0.6 (Preliminary)
67
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
TCLK
0
0
1
1
1
16-bit auto-reload mode. The Timer 2 overflow sets TF2 bit and the TH2,TL2
registers reloaded 16-bit value from RCAP2H, RCAP2L.
16-bit capture mode. The Timer 2 overflow sets TF2 bit. When the EXEN2 =
1, the TH2, TL2 register values are stored into RCAP2H, RCAP2Lwhile
falling edge is detected on T2EX pin.
0
1
X
X
1
0
Baud rate generator for the UART0 interface. It auto-reloads its counter with
RCAP2H, RCAP2Lvalues each overflows.
Timer 2 is off
X
Table12.5
Timer 2 modes
12.4.2 Timer 2 Registers
T2CON register
(0xC8)
Address/Name R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
TF2 EXF2
RCLK TCLK
EXEN2 TR2
CT2 CPRL2
C8h
R/W
APOL
Reset
0
0
0
0
0
0
0
0
EXF2
:
Falling edge indicator on T2EX pin when EXEN = 1. Must be cleared by soft
are.
RCLK
:
Receiver clock enable
=1, UART0 receiver is clocked by Timer 2 overflow pulses
=0, UART0 receiver is clocked by Timer 2 overflow pulses
TCLK
:
Transmit clock enable
=1, UART0 transmitter is clocked by Timer 2 overflow pulses
=0, UART0 transmitter is clocked by Timer 2 overflow pulses
EXEN2
:
Enable T2EX pin functionality.
=1, Allows capture or reload as a result of T2EX pin falling e
ge.
=0, ignore T2EX events
TR2
:
Start / Stop Timer 2
=1, start
=0, stop
CT2
:
Timer / counter select
=1, external event counter. Clock sourc
s T2 pin.
=0, timer 2 internally clocked
CPRL2
:
Capture / Reload select
=1, T2EX pin falling edge caus
pture to occur when EXEN2 = 1
=0, automatic reload occurs o
2 overflow or falling edge T2EX pin when EXEN2 = 1. When RCLK or TCLK is set
this bit is ignored and automati
d on Timer 2 overflow is forced.
Sep., 2014, Version 0.6 (Preliminary)
68
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
Figure12.8 Timer
2 block
iagram in timer mode
CKCON register (0x8E)
Address/Name R/W Bit
7 Bit
6 Bit
5 Bit
4 Bit
3 Bit
2 Bit
1 Bit
0
8Eh
R/W
D1 WD0 T2M
T1M T0M MD2 MD1 MD0
CKCON
Reset
0
0
0
0
0
0
0
0
T2M
:
This bit controls the division o
stem clock that drives Timer 2. This bit has no effect when the
timer is in baud
rate generator mode.
=1, Timer 2 uses a divid
-by-4 of the system clock frequency.
=0, Timer 2 uses a divid
-by-1
of the system clock frequency.
Timer 2 interrupt re
ated b
s are shown below. An interrupt can be turned on/off by IE (0xA8) register, and set into high/low
priority group by IP r
gist
r.
IE register (0xA8
Address/Name R/W Bit
7 Bit
6 Bit
5 Bit
4 Bit
3 Bit
2 Bit
1 Bit
0
A8h
IE
Reset
R/W EA
0
–
ET2
0
ES
0
ET1 EX1 ET0 EX0
0
0
0
0
0
EA
:
Enable global interrupts.
ET2
:
Enable Timer 2 interrupts.
IP register (0xB8)
Address/Name R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
B8h
IP
Reset
R/W
–
–
PT2
0
PS
0
PT1
0
PX1
0
PT0
0
PX0
0
0
0
Sep., 2014, Version 0.6 (Preliminary)
69
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
PT2
:
Timer 2 priority level control (at 1-high level)
T2CON register
(0xC8)
Address/Name R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
C8h
T2CON
Reset
R/W
TF2 EXF2
RCLK TCLK
EXEN2 TR2
CT2 CPRL2
0
0
0
0
0
0
0
0
TF2
:
Timer 2 interrupt (overflow) flag. It must be cleared by software.
The flag will not be set when either RCLK or TCLK is set.
All Timer 2 related bits generate interrupts can be set or cleared by software, with the same result as if they had been set or
cleared by hardware. That is, interrupts can be generated or pending interrupts can be cancell
d by software.
Interrupt flag
Function
TF2 Internal,
Timer2
Active level / edge
Flag resets
Vec
tural priority
–
Software
Timer2 interrupt
0x2B
6
Table12.6
Interrupt is also generated at falling edge
of T2EX pin, while EXEN2 bit is s
his i
errupt doesn’t set TF2 flag, but EXF2
only and also uses 0x2B vector. Please see picture below. Timer2 internal lo
igured as baud
‐
rate generator is shwon
below.
Figure12.9 Timer
2 block diagram as UART0 baud rate generator
Please note that SMODbit is ignored by UART when clocked by Timer2. The RLCK/TCLK frequency is equal to
:
Sep., 2014, Version 0.6 (Preliminary)
70
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
13. UART
UART is full duplex, meaning it can transmit and receive concurrently. It is receive double
‐
buffered, meaning it can
commence reception of a second byte before a previously received byte has been read from the receive register. Writing to
SBUF loads the transmit register, and reading SBUF reads a physically separate receive register. The serial port can operate in
4 modes: one synchronous and three asynchronous modes. Mode 2 and 3 has a special feature for multiprocessor
communications. This feature is enabled by setting SM2 bit in SCON register. The master processor first sends out an address
byte, which identifies the target slave. An address byte differs from a data byte in that the 9th bit is 1 in an address byte and 0 in
a data byte. With SM2 = 1, no slave will be interrupted by a data byte. An address byte will interrupt all slaves. The addressed
slave will clear its SM2 bit and prepare to receive the data bytes that will be coming. The slaves that were not
eing addressed
leave their SM2 set and ignoring the incoming data.
13.1 UART PINS DESCRIPTION
The UART pins functionality is described in the following table. All pins are one directional
There are no three
‐
state
output pins and internal signals.
PIN
Rxd_0
(P3.0)
Txd_0
(P3.1)
ACTIVE TYPE
–
–
DESCRIPTION
Input / Output
Serial r
iver
_
/ O_0
Output Seria
itter line 0
Table13.1 UART
pins descri
tion
13.2 FUNCTIONALITY
The UART has the same functionality as a standard
1 UART. The UART related registers are: SBUF(0x99), SCON
(0x98), PCON(0x87), IE(0xA8) and IP(0xB8). The UART
ffer (SBUF) consists of two separate registers: transmit and
receive registers. A data writes into the SBUF sets this da
ART output register and starts a transmission. A data reads
from SBUF, reads data from the UART receive regis
er.
SBUF register
(0x99)
Address/Name R/
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
99h
SBUF
/W
Reset
0
0
0
0
0
0
0
0
SBUF[7:0]
:
UART buffer
SCON register
0x98)
Ad
ress/Name R/W Bit
7 Bit
6 Bit
5 Bit
4 Bit
3 Bit
2 Bit
1 Bit
0
98h
SCON
R/W SM00
SM01 SM02
REN
TB8
0
RB8
0
TI
0
RI
0
Reset
0
0
0
0
SM2
:
Enable a multiprocessor communication feature
SM [1:0]
:
Sets baud rate
SM0 SM1 Mode Description
Baud Rate
0
0
1
1
0
1
0
1
0
1
2
3
Shift register
F
CLK
/12
8-bit UART
9-bit UART
9-bit UART
Variable
F
CLK
/32 or F
CLK
/64
Variable
Timer 2 cannot be used as baud rate generator when Compare Capture unit is present in the system. The UART baud
rates are presented in the table below.
Mode
Mode 0
Baud Rate
FCLK/12
Sep., 2014, Version 0.6 (Preliminary)
71
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
Mode 1, 3
Timer 1 overflow rate
–
T1
ov
SMOD= 0
SMOD= 1
T1
ov
/32
T1
ov
/16
Timer 2 overflow rate
–
T2
ov
SMOD= x
SMOD= 0
SMOD= 1
T2
ov
/16
F
CLK
/64
F
CLK
/32
Mode 2
The SMOD bit is located in PCON register.
REN
:
If set, enable serial reception. Cleared by software to disable reception.
TB8
:
The 9
th
transmitted data bit in Modes 2 and 3. Set or cleared by the MCU, depending on the function it p
rfo
ms (parity
check, multiprocessor communication etc.)
RB8
:
In Modes 2 and 3 it is the 9
th
data bit received. In Mode 1, if SM2 is 0, RB8 is the stop bit. In M
de 0
is bit is not used.
PCON register
(0x87)
Address/Name
87h
R/W
Bit 7
SMOD
0
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
R/W
–
–
PWE
0
–
SW
STOP CKSE
PCON
Reset
0
0
0
0
0
0
SMOD
:
UART double baud rate bit when clocked by Timer 1 only.
UART interrupt related bits are shown below. An interrupt can be turned on / o
f by IE register, and set into high / low priority
group by IP register.
IE register
(0xA8)
Address/Name R/W Bit
7 Bit
it 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
A8h
IE
Reset
R/W EA
0
–
2
0
ES
0
ET1 EX1 ET0 EX0
0
0
0
0
0
ES
:
RI & TI interrupt enable flag
IP register
(0xB8)
Address/Name
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
B8h
IP
Rese
–
–
PT2
0
PS
0
PT1
0
PX1
0
PT0
0
PX0
0
0
0
PS
:
RI & TI interrupt p
ority flag
SCON register
(0x98)
A
dress/Name R/W Bit
7 Bit
6 Bit
5 Bit
4 Bit
3 Bit
2 Bit
1 Bit
0
98h
SCON
Reset
R/W
SM0
0
SM1
0
SM2 REN
TB8
0
RB8
0
TI
0
RI
0
0
0
TI
:
Transmit interrupt flag, set by hardware after completion of a serial transfer. It must be cleared by software.
RI
:
Receive interrupt flag, set by hardware after completion of a serial reception. It must be cleared by software.
All of bits that generate interrupts can be set or cleared by software, with the same result as if they had been set or cleared by
hardware. That is, interrupts can be generated or pending interrupts can be cancelled by software.
Interrupt flag
Function
Active level / edge
Flag resets
Vector Natural
priority
TI & RI
Internal, UART
Table13.3
–
Software
UART interrupt
0x23
5
Sep., 2014, Version 0.6 (Preliminary)
72
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
13.3 OPERATING MODES
13.3.1 UART MODE 0, SYNCHRONOUS
Pin RXD0I serves as input and RXD0O as output. TXD0 output is a shift clock. The baud rate is fixed at 1/12 of the CLK
clock frequency. Eight bits are transmitted with LSB first. Reception is initialized by setting the flags in SCON as follows: RI=0
and REN=1.
Figure13.3 UART
transmission mode 0 timing diagram
13.3.2 UART MODE 1, 8-BIT UART, VARIABLE BAUD RATE, TIMER CLOCK SOURCE
Pin RXD0I serves as input, and TXD0 serves as serial output. 10 bits are transmitte
: a start bit (always 0), 8 data bits
(LSB first), and a stop bit (always 1). On receive, a start bit synchronizes the transmission, 8
ata bits are available by reading
SBUF, and stop bit sets the flag RB8 in the SFR SCON. The baud rate is variable an
depends from Timer 1 or Timer 2 mode.
To enable Timer 2 clocking set the TCLK, RCLK bits located in T2CON (0xC8
gist
r. SMOD bit is ignored when UART is
clocked by Timer2.
Figure13.4 UART
transmission mode 1 timing diagram
13.3.3 UART MODE 2, 9
‐
BIT UART, FIXED BAUD RATE
This mode is similar to Mode 1 with two
ferences. The baud rate is fixed at 1/32 or 1/64 of CLK clock frequency, and 11
bits are transmitted or received: a start bit (0), 8 da
a bits (LSB first), a programmable 9
th
bit, and a stop bit (1). The 9
th
bit can be
used to control the parity of the UART inter
ce
t transmission, bit TB8 in SCON is output as the 9
th
bit, and at receive, the 9
th
bit affects RB8 in SCON.
Figure13.5 UART
transmission mode 2 timing diagram
13.3.4
ART MODE 3, 9
‐
BIT UART, VARIABLE BAUD RATE, TIMER CLOCK SOURCE
The
ly difference between Mode 2 and Mode 3 is that the baud rate is a variable in Mode 3. When REN=1 data
receiving is enabled. The baud rate is variable and depends from Timer 1 or Timer 2 mode. To enable Timer 2 clocking set the
TCLK, RCLK bits located in T2CON (0xC8) register. SMOD bit is ignored when UART is clocked by Timer2.
Figure13.6 UART
transmission mode 3 timing diagram
Sep., 2014, Version 0.6 (Preliminary)
73
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
14. IIC interface
A8105
’
s I
2
C peripheral provides two-wire interface between the device and I
2
C -compatible device by the two-wire I
2
C serial bus.
The I
2
C peripheral supports the following functions.
Conforms to v2.1 of the I
2
C specification (published by Philips Semiconductor)
Master transmitter / receiver
Slave transmitter / receiver
Flexible transmission speed modes: Standard (up to 100 Kb/s) and Fast (up to 400Kb/s)
Multi-master systems supported
Supports 7-bit addressing modes on the I
2
C bus
Interrupt generation
Allows operation from a wide range of input clock frequencies (build-in 8-bit timer)
PIN 23 and PIN 24 are I2C Interface in A8105. The alternate function is Port 0.5 and Port 0.6. Use
ca
set BBSEL (BBH)
to set up the PIN function. Please refer the Chapter 11 for more detail information.
PIN
SCL
(P0.5)
SDA
(P0.6)
TYPE
INPUT /OUTPUT
INPUT/ OUTPUT
DESCRIPTION
I
2
C clock input /output
I
2
C data input /outp
t
Table14.1
I2C interface pins description
14.1 Master mode I
2
C
The I
2
C master mode provides an interface between a microprocessor a
d a
I
2
C bus. It can be programmed to operate
with arbitration and clock synchronization to allow it to operate in multi
‐
aster systems. Master mode I
2
C supports transmission
speeds up to 400Kb/s.
14.1.1 I
2
C REGISTERS
There are six registers used to interface to the host: th
ol, Status, Slave Address, Transmitted Data, Received Data
and Timer Period Register.
Regi
ter
ave address
–
I2CMSA
Control
–
I2CMCR
Address
0xF4
0xF5
Tr
smitted data I2CBUF
Timer period – I2CMTP
Table14.3
0xF6
0xF7
I
2
C Registers for writing
Register
Slave address
–
I2CMSA
Status
–
I2CMSR
Address
0xF4
0xF5
Received data – I2CBUF
0xF6
Timer period – I2CMTP
0xF7
Table14.4
I
2
C Master m
de Timer Period Register
I
2
C Registers for reading
To g
rate wide range of SCL frequencies the core have built
‐
in 8
‐
bit timer. Programming sequence must be done at
least once
ter system reset. After reset, register have 0x01 value by default.
SCL_PERIOD = 2 x (1+TIMER_PRD) x (SCL_LP + SCL_HP) x CLK_PRD
For example
:
– CLK_PRD = 62.5ns (CLK_FRQ = 16MHz)
;
– TIMER_PRD =3
;
– SCL_LP = 6
;
(fixed)
– SCL_HP = 4; (fixed)
SCL_PERIOD = 2 x (1 + 3) x (6 + 4 ) x 62.5ns = 5000ns = 5us
SCL_FREQUENCY = 1 / 5us = 200 KHz
SCL_PRD
– SCL line period (I2C clock line)
TIMER PRD
-Timer period register value (range 1 to 255)
Sep., 2014, Version 0.6 (Preliminary)
74
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
CLK_PRD
– System clock period (1/f
clk
)
I2CMTP
(0xE7)
Address/Name R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
E7h
I2CMTP
Reset
R/W
0
0
P.6
0
P.5
0
P.4
0
P.3
0
P.2
0
P.1
0
P.0
1
I
2
C CONTROL AND STATUS REGISTERS
The Control Register consists of eight bits: the RUN, START, STOP, ACK, HS, ADDR, SLRST and R
TB bit.
e RSTB bit
performs reset of whole I
2
C controller and behaves identically as external reset provided by RST pin. U
this bit software
application can reinitialize I
2
C mater module when some problem is encountered on I
2
C bus. In cas
wh
n I
2
C Slave device
blocks I
2
C bus, then SLRST bit should be set along with RUN bit (just after issuing the RSTB
SLR
T bit causes that I
2
C
master module generates 9 SCK clocks (no START is generated) to recover Slave device to known state and issues at the end
STOP. This bit is automatically cleared by I2C MASTER MODULE
, thus, it is always read as ‘0’. The BUSY bit should be
checked to know when this transmission is ended.
The START bit will cause the generation of the START, or REPEATED START conditi
n. The STOP bit determines if the
cycle will stop at the end of the data cycle, or continue on to a burst. To generate a si
gle send cycle, the Slave Address register
is written with the des
ired address, the R/S bit is set to ‘0’, and Control Register
wri
ten with HS=0, ACK=x, STOP=1,
START=1, RUN=1 (binary xxx0x111 x
‐
mean 0 or 1) to perform the operation
top
When the operation is completed (or
aborted due an error), the interrupt is generated. The data may be read from
ved Data Register. When I2C MASTER
MODULE core operates in Master receiver mode the ACK bit must be set
orm
y to logic 1. This cause the I2C MASTER
MODULE bus controller to send acknowledge automatically after each byte.
his bit must be reset when the I2C MASTER
MODULE bus controller requires no further data to be sent from slave tr
smitter.
The ADDR bit along with RUN bit cause the generation of the S
AR
condition and transmission of Slave Address. Next
STOP can end transmission, or REPEATED START generates
e
ART and ADDRRESS sequence once again. In both
cases STOP can ends transmission. See I
2
C MASTER MODULE ACK Polling chapter for details.
I2CMCR
(0xF5)
Address/Name R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
ACK STOP
START RUN
F5h
R/W
STB SLRST ADDR
HS
I2CMCR
Reset
0
0
0
0
0
0
0
0
RSTB SLRST ADDR HS R/
K STOP START RUN OPERATION
0
0
0
0
0
0
1
1
START condition followed by SEND (Master remains
in Transmitter mode)
0
0
0
0
0
–
1
1
1
START condition followed by SEND and STOP
condition
0
0
0
0
1
0
0
1
1
START condition followed by RECEIVE operation
with
negative Acknowledge
(Master remains in
Receiver mode)
0
0
0
0
0
0
1
1
0
1
1
0
1
1
1
1
START condition followed by RECEIVE and STOP
condition
START condition followed by RECEIVE (Master
remains in Receiver mode)
forbidden sequence
Master Code sending and switching to High
‐
speed
mode
0
0
0
0
0
0
0
1
1
0
1
0
1
0
1
0
1
1
1
0
0
1
0
0
–
0
–
0
–
0
–
0
–
0
–
1
I2CM module software reset
Reset slaves connected to I2C bus by generating 9
SCK clocks followed by STOP
0
0
1
0
0
0
0
0
1
START condition followed by Slave Address
Table14.5
Control bits combinations permitted in IDLE state *
RSTB SLRST ADDR HS R/S ACK STOP START RUN OPERATION
Sep., 2014, Version 0.6 (Preliminary)
75
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
0
0
0
0
–
–
0
0
1
SEND operation (Master remains in Transmitter
mode)
0
0
0
0
0
0
0
0
0
0
0
0
–
–
0
–
–
–
1
1
0
0
0
1
0
1
1
STOP condition
SEND followed by STOP condition
Repeated S
T
ART condition followed by SEND
(Master remains in Transmitter mode)
Repeated S
T
ART condition followed by SEND and
STOP condition
Repeated S
T
ART condition followed by RECEIVE
operation with
negative Acknow
edge
(Master
remains in Receiver mode)
0
0
0
0
0
0
0
0
0
1
–
1
0
1
1
1
1
0
0
0
0
0
0
0
0
0
1
1
0
1
1
0
1
1
1
1
Repeated S
T
ART condition fol
d by SEND and
STOP condition
Repeated S
T
ART con
ition f
lowed by RECEIVE
(Master remains in Receiver mode)
forbidden sequence
I2CM module so
are
eset
Repeated S
T
ART condition followed by Slave
Address
0
1
0
0
0
0
0
0
1
0
–
0
1
–
0
1
–
–
1
–
0
1
–
1
1
–
1
Table14.6
Control bits combinations permitted in M
er Tr
nsmitter mode
RSTB SLRST ADDR HS R/S ACK STOP START RUN OP
RA
ON
RECE
VE operation with
negative Acknowledge
(Master remains in Receiver mode)
STOP condition**
RECEIVE followed by STOP condition
RECEIVE operation (Master remains in Receiver
mode)
0
0
0
0
–
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
–
–
–
–
0
1
1
1
0
0
0
0
0
1
1
forbidden sequence
0
0
0
0
0
0
0
0
–
1
1
0
1
0
0
1
1
1
Repeated S
T
ART condition followed by RECEIVE
operation with
negative Acknowledge
(Master
remains in Receiver mode)
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
–
1
1
0
0
0
1
0
0
1
–
1
1
1
1
–
1
1
1
1
–
Repeated S
T
ART condition followed by RECEIVE
and STOP condition
Repeated S
T
ART condition followed by RECEIVE
(Master remains in Receiver mode)
Repeated S
T
ART condition followed by SEND
(Master remains in Transmitter mode)
Repeated S
T
ART condition followed by SEND and
STOP condition
–
–
–
I2CM module software reset
Table14.7
Control bits combinations permitted in Master Receiver mode
The status Registe
is consisted of six bits
:
the BUSY bit, the ERROR bit, the ADDR_ACK bit, the DATA_ACK bit, the
ARB_LO
it, and the IDLE bit.
I2CMSR
(0xF5)
Address/Name R/W
Bit 7
Bit 6
BUS_
BUSY
0
Bit 5
IDLE
1
Bit 4
ARB_
LOST
0
Bit 3
DATA_
ACK
0
Bit 2
ADDR_
ACK
0
Bit 1
ERROR
0
Bit 0
BUSY
0
F5h
I2CMSR
R/W
–
Reset
0x20
0
IDLE
:
This bit indicates that I2C BUS controller is in the IDLE state
。
BUSY
:
This bit indicates that I2C BUS controller receiving, or transmitting data on the bus, and other bits of Status register are
no valid;
BUS_BUSY
:
This bit indicates that the Bus is Busy, and access is not possible. This bit is set / reset by START and STOP
conditions;
Sep., 2014, Version 0.6 (Preliminary)
76
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
ERROR
:
This bit indicates that due the last operation an error occurred: slave address wasn
’
t acknowledged,
transmitted
data wasn
’
t acknowledged, or I2C Bus controller lost the arbitration;
ADDR_ACK
:
This bit indicates that due the last operation slave address wasn
’
t acknowledged;
ARB_LOST
:
This bit indicates that due the last operation I2C Bus controller lost the arbitration;
SLAVE ADDRESS REGISTER
The Slave address Register consists of eight bits
:
Seven address bits (A6-A0), and Receive/ not send bit R/S. The R/S bit
determines if the next operation will be a Receive (high), or Send (low).
I2CMSA
(0xF4)
Address/Name R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
F4h
I2CMCA
Reset
R/W
A.6
0
A.5
0
A.4
0
A.3
0
A.2
0
A.1
0
A.0
0
R/
0
I
2
C Buffer
–
RECEIVER AND TRANSMITTER REGISTERS
I2C module has two separated 1 byte buffer in receiver and transmitter and these are lo
ated in the same address (0xF6).
The Transmitted Data Register consists of eight data bits which will be sent on the bus due the next Send, or Burst Send
operation. The first send bit is D.7 (MSB).
I2CBUF
(0xF6)
Address/Name R/W
Bit 7
Bit 6
Bit 5
B
t 4
Bit 3
Bit 2
Bit 1
Bit 0
F6h
I2CBUF
Reset
R/W
D.7
0
D.6
0
D.5
0
D.4
D.3
0
D.2
0
D.1
0
D.P
0
The Receiver Data Register consists of eight data bits w
ve been received on the bus due the last receive, or Burst
Receive operation.
I2CBUF
(0xF6)
Address/Name R/W
i
7 Bit
6 Bit
5 Bit
4 Bit
3 Bit
2 Bit
1 Bit
0
F6h
I2CBUF
Reset
R/W
7
0
D.6
0
D.5
0
D.4
0
D.3
0
D.2
0
D.1
0
D.P
0
14.2.4 I2C MASTER MOD
LE AVAILABLE SPEED MODES
Default transmission parameter
constant values are shown in sections below. SCL clock frequency can be changed by
modification of timer per
od values as show in the table below.
I2C MASTER MODULE STANDARD MODE
Typical confi
ratio
values for Standard speed mode
:
The followi
g t
le gives an example parameters for standard I2C speed mode.
System clock
TIMER_PERIOD Transmission
speed
4 MHz
6 MHz
10 MHz
16 MHz
20 MHz
1 (01h)
2 (02h)
4 (04h)
7 (07h)
9 (09h)
100kb/s
100kb/s
100kb/s
100kb/s
100kb/s
Table14.8
I2C MASTER MODULE Timer period values for standard speed mode
I2C MASTER MODULE FAST MODE
Typical configuration values for Fast speed mode
:
The following table gives example parameters for Fast I2C speed mode.
Sep., 2014, Version 0.6 (Preliminary)
77
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
System clock
TIMER_PERIOD Transmission
speed
10 MHz
16 MHz
20 MHz
1 (01h)
1 (01h)
2 (02h)
250 Kb/s
400 Kb/s
333 Kb/s
Table14.8 I2C
MASTER MODULE Timer period values for Fast speed mode
14.2.5 I2C MASTER MODULE AVAILABLE COMMAND SEQUENCES
I2C MASTER MODULE SINGLE SEND
IDLE
Write Slave Address
to
I2CSA
register
Write Data to
I2CBUF
register
This sequence may be omitte
in single-Master sys
s
Read
I2CCR
register
NO
Bus Busy=“0”
YES
Write ,,—0-111”to
I2CCR
register
Read
I2CCR
reg
ster
NO
Bus
usy
“0”
YES
YES
NO
Error =“0”
IDLE
Error service
IDLE
Figure14.4 I2C
MASTER MODULE Single SEND flowchart
Sep., 2014, Version 0.6 (Preliminary)
78
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
I2C MASTER MODULE SINGLE RECEIVE
IDLE
Write Slave Address
to
I2CSA
register
This sequence may be omitted
in single-Master systems
Read
I2CCR
register
NO
Bus Busy=“0”
YES
Write ,,—00111”to
I2CCR
register
Read
I2CCR
register
NO
Bus Busy=“0”
YES
YES
Error =“0”
Read Data from
I2CBUF
register
Error service
IDLE
ID
Figure14.5 Single
RECEIVE flowchart
Sep., 2014, Version 0.6 (Preliminary)
79
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
I2C MASTER MODULE BURST SEND
IDLE
Write Slave Address
to
I2CSA
register
Write Data to
I2CBUF
register
This sequence may be omitted
in single-Master systems
Read
I2CCR
register
NO
Bus Busy=“0”
YES
Write ,,—0-011”to
I2CCR
register
Read
I2CCR
register
NO
Bus Busy=“0”
YES
NO
Error =“0”
YES
NO
Arb_Lost =‘1’
Write Da
a to
I2CBUF
re
ister
Write ,,—0-100”to
I2CCR
register
YES
NO
YES
I
dex = n
Error service
IDLE
Error service
IDLE
Write ,,–
I2CCR
Write ,,—0-101”to
I2CCR
register
Read
I2CCR
register
NO
Bus Busy=“0”
YES
YES
NO
Error =“0”
IDLE
Error service
IDLE
Figure14.6 I2C
MASTER MODULE Sending n bytes flowchart
Sep., 2014, Version 0.6 (Preliminary)
80
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
I2C MASTER MODULE BURST RECEIVE
IDLE
This sequence may be omitted
in single-Master systems
Write Slave Address
to
I2CSA
register
Read
I2CCR
register
NO
Bus Busy=“0”
YES
Write ,,—01011”to
I2CCR
register
Read
I2CCR
register
NO
Bus Busy=“0”
YES
NO
Error =“0”
YES
NO
Arb_Lost =‘1’
Read Data f
m
I2CBUF
re
ister
Write ,,—0-100”to
I2CCR
register
YES
NO
YES
Error service
IDLE
Error service
IDLE
Ind
x = m-1
Write ,,—01
I2CCR
r
Write ,,—00101”to
I2CCR
register
Read
I2CCR
register
NO
Bus Busy=“0”
YES
YES
Read Data from
NO
Error =“0”
Error service
IDLE
I2CBUF
register
IDLE
Figure14.7 I2C
MASTER MODULE Receiving m bytes flowchart
Sep., 2014, Version 0.6 (Preliminary)
81
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
I2C MASTER MODULE BURST RECEIVE AFTER BURST SEND
Figure14.8 I2C
MASTER MODULE
ending n bytes then Repeated Start and Receiving m bytes flowchart
Sep., 2014, Version 0.6 (Preliminary)
82
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
I2C MASTER MODULE BURST SEND AFTER BURST RECEIVE
Figure14.9 I2C
MAST
ODULE Receiving m bytes then Repeated Start and Sending n bytes flowchart
igure14.10 I2C
MASTER MODULE Single RECEIVE with 10-bit addressing flowchart
Sep., 2014, Version 0.6 (Preliminary)
83
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
I2C MASTER MODULE ACK POLLING
IDLE
Write Slave Address
to
I2CSA
register
Read
I2CCR
register
NO
BUS BUSY= ‘0’
YES
Write ,,00100001″ to
I2CCR
register
Read
I2CCR
register
NO
BUSY= ‘0’
YES
NO
A
R_ACK=‘0’
YE
Burst S
op
Write ,,00100011″ to
I2CCR
register
Read
I2CCR
register
NO
BUSY= ‘0’
YES
YES
NO
ADDR_ACK=‘0’
Burst Send or Stop
Figure14.11 I2C
MASTER MODULE ACK Polling flowchart
Sep., 2014, Version 0.6 (Preliminary)
84
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
14.3 I2C MASTER MODULE INTERRUPT GENER
A
TION
I2C MASTER MODULE interrupt flag is automatically asserted when I2C transfer (send or receive a byte) is completed or
transfer error has occurred. I2CMIF flag has to be cleared by software.
Interrupt flag
Function
I2CMIF Internal,
I2C MASTER MODULE
Table14.11 I2C
MASTER MODULE interrupt summary
Active level/edge
Flag resets
Vector Natural
priority
–
Software 0x6B
14
I2C MASTER MODULE related interrupt bits have been summarized below. The IE (0xA8) contains global i
terrupt system
disable (0) / enable (1) bit called EA.
EIE (0xE8)
Address/Name R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
E8h
EIE
Reset
EI2CS
ESPI
0
R/W
EI2CM EWDI EKEYINT ERFINT EINT4 EINT3 EINT2
0
0
0
0
0
0
0
EI2CM
:
Enable I2C MASTER MODULE interrupts
EIP (0xF8)
Address/Name R/W
Bit 7
Bit 6
Bit 5
Bi
4
Bi
3 Bit
2 Bit
1 Bit
0
F8h
EIP
Reset
PI2CS
PSPI
0
R/W
PI2CM PWDI PK
YIN
PRFINT PINT4 PINT3 PINT2
0
0
0
0
0
0
0
PI2CM
:
I2C MASTER MODULE priority level control (at 1
vel)
EIF
(0x91)
Address/Name R/W
B
7 Bit
6 Bit
5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
91h
EIF
Reset
I2CSF
SP
0
R/W
I2CMF
0
–
KEYINTF RFINTF INT4F
INT3F INT2F
0
0
0
0
0
0
I2CMIF
:
I2C MASTER MODULE inte
flag
It must be cleared by so
tware writing logic
‘
1
’
. Writing
‘
0
’
does not change its content.
14.5 Slave mode I
2
C
The I
2
C modu
e
rovides an interface between a microprocessor and I
2
C bus. It can works as a slave receiver or transmitter
depending on
ork
ng mode determined by microprocessor/microcontroller. The core incorporates all features required by I
2
C
specification. Th
I
2
C module supports all the transmission modes: Standard and Fast.
14.5.1 I2
MODULE INTERNAL REGISTERS
There
re five registers used to interface to the target device
:
The Own Address, Control, Status, Transmitted Data and
Received Data registers.
Register
Own address
–
I2CSOA
Control
–
I2CSCR
Address
0xF1
0xF2
Transmitted data
–
I2CSBUF 0xF3
Table14.12 I2C
MODULE Registers for writing
Register
Own address
–
I2CSOA
Control
–
I2CSSR
Address
0xF1
0xF2
Sep., 2014, Version 0.6 (Preliminary)
85
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
Received data
–
I2CSBUF 0xF3
Table14.13 I2C
MODULE Registers for reading
I2CSOA
–
OWN ADDRESS REGISTER
The Own Address Register consists of seven address bits which identify I
2
C module core on I
2
C Bus. This register can be
read and written at the address 0xF1.
I2CSOA (0xF1)
Address/Name R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
F1h
I2CSOA
Reset
R/W
–
A.6
0
A.5
0
A.4
0
A.3
0
A.2
0
A.1
0
A0
0
0
I2CSCR
–
CONTROL AND STATUS REGISTERS
The Control Register consists of the bits
:
The RSTB and DA bit. The RSTB bit performs rese
of whole I
2
C controller and
behaves identically as external reset provided by RST pin. Using this bit software application can rei
itialize I
2
C module when
some problem is encountered on I
2
C bus. The DA bit enables (
‘
1
’
) and disable (
‘
0
’
) the I
2
C mod
le device operation. DA is set
immediately to
‘
1
’
when MCU write DA=1. This register can be only written at address 0xF
Reading this address puts status
register on data bus
–
see below.
I2CSCR
(0xF2)
Address/Name R/W Bit
7 Bit
6 Bit
5 Bit
4
Bit
Bit 2
Bit 1
Bit 0
F2h
I2CSCR
R/W RSTB DA
–
–
R
CFINCLR SENDFINCLR
–
–
Reset
0
0
0
0
0
0
0
0
DA
:
Device Active
–
enable or disable the I
2
C module device oper
tion;
RSTB
:
Reset of whole I
2
C controller by writing
‘
1
’
to this b
haves identically as RST pin
RECFINCLR
:
Writing
‘
1
’
to this bit clears RECFIN bit from
C MODULE status register.
SENDFINCLR
:
Writing
‘
1
’
to this bit clears SENDFIN bit from the I2C MODULE status register.
The Status Register consists of five bits:
he DA, BUSACTIVE, RECFIN, SENDFIN bit, RREQ bit, TREQ bit. The receive
finished RECFIN bit indicates that Master I
C controller has finished transmitting of data during single or burst receive
operations. It also causes generation of
ter
upt on IRQ pin. The send finished SENDFIN bit indicates that Master I2C
controller has finished receiving of data durin
single or burst send operations. It also causes generation of interrupt on IRQ pin.
The Receive Request RREQ bit in
that I
2
C module device has received data byte from I2C master. I
2
C module host
device (usually MCU) should read o
byte from the Received Data register I2CSBUF. The Transmit Request TREQ bit
indicates that I2C MODULE d
vice is addressed as Slave Transmitter and I
2
C module host device (usually MCU) should write
one data byte into the Transm
ted D
ta register I2CSBUF. The
BUSACTIVE ‘1’ signalizes that any transmission (send, receive
or own address detection) is in progress. BUSACTIVE is cleared (‘0’) automatically by
I
2
C module in case when there is no any
transmission. This is re
d only bit.
The DA bit should be p
lled (read) when MCU wrote DA=0. The DA bit is not immediately cleared when any I2C
transmission (sen
, receive or own address detection) is in progress. When current transmission has completed then this bit is
cleared to ‘0’ and
C module become inactive.
I2CSSR
(0xF2)
Address/Name R/W Bit
7 Bit
6 Bit
5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
F2h
I2CSSR
Reset
R/W
DA
0
–
BUSACTIVE RECFIN SENDFIN TREQ RREQ
0
0
0
0
0
0
0
DA
:
Device Active
–
enable (
‘
1
’
) or disable (
‘
0
’
) the I2C MODULE device operation;
BUSACTIVE
:
Bus ACTIVE
– ‘
1
’
signalizes that any transmission: send, receive or own address detection
is in progress;
RREQ
:
Indicates that I
2
C module device has received data byte from I
2
C master;
It is automatically cleared by read of I2CSBUF.
TREQ
:
Indicates that I
2
C module device is addressed as transmitter and requires data byte from host device;
It is automatically cleared by write data I2CSBUF.
Sep., 2014, Version 0.6 (Preliminary)
86
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
RECFIN
:
Indicates that Master I2C controller has ended transmit operation. It means that no more RREQ
will be set during
this single or burst I
2
C module receive operation. It is cleared by writing
‘
1
’
to the
RECFINCLR bit in the I
2
C module control
register.
SENDFIN
:
Indicates that Master I2C controller has ended receive operation. It means that no more
TREQ will be set during
this single or burst I
2
C module send operation. It is cleared by writing
‘
1
’
to the SENDFINCLR bit in the I2C control register.
NOTE
:
All bits are active at HIGH level (
‘
1
’
).
I2CSBUF
–
RECEIVER AND TRANSMITTER REGISTERS
The Transmitter Data Register consists of eight Data bits which will be sent on the bus due the next Send operation. The
first send bit is the D.7(MSB).
I2CSBUF (0xF3)
Address/Name R/W Bit
7 Bit
6 Bit
5 Bit
4 Bit
3 Bit
2 Bit
1 Bit
F3h
I2CSBUF
Reset
R/W
D.7
0
D.6
0
D.5
0
D.4
0
D.3
0
D.2
0
D.
0
D.
0
The Receiver Data Register consists of eight data bits which have been receive
on
e bus due the last Receive
operation.
I2CSBUF (0xF3)
Address/Name R/W Bit
7 Bit
6 Bit
5 Bit
4
Bit 2
Bit 1
Bit 0
F3h
I2CSBUF
Reset
R/W
D.7
0
D.6
0
D.5
0
D.4
D.3
0
D.2
0
D.1
0
D.0
0
14.7
A
VAILABLE I2C MODULE TRANSMISSIO
DES
This chapter describes all available transmission modes
he I
2
C module core. Default I2C own address for all presented
waveforms is 0x39 (
“
0111001
”
).
14.7.1 I
2
C module SINGLE RECEIVE
The figure below shows a set of sequenc
during Single data Receive by I2C MODULE. Single receive sequences
:
Start condition
I
2
C module is addressed by I2C Ma
er as receiver
Address is acknowledged
2
C module
Data is received by I
2
C
Data is acknowledged by
odule
Stop condition
14.7.2 I
2
C module SINGLE SEND
The figure below shows a
et of sequences during Single data Send by I2C MODULE. Single send sequences
:
Start cond
tion
I
2
C m
ule i
addressed by I2C Master as transmitter
A
dres
is acknowledged by I
2
C module
Data is
ansmitted by I
2
C module
Data is not acknowledged by I2C Master
top condition
14.7.3 I
2
C module BURST RECEIVE
The figure below shows a set of sequences during Burst data Receive by I
2
C module. Burst receive sequences
:
Start condition
I
2
C module is addressed by I2C Master as receiver
Address is acknowledged by I
2
C module
(1)Data is received by I
2
C module
(2)Data is acknowledged by I
2
C module
STOP condition
Sequences (1) and (2) are repeated until Stop condition occurs.
Sep., 2014, Version 0.6 (Preliminary)
87
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
14.7.4 I
2
C module BURST SEND
The figure below shows a set of sequences during Burst Data Send by I
2
C module. Burst send sequences
:
Start condition
I
2
C module is addressed by I2C Master as transmitter
Address is acknowledged by I
2
C module
(1)Data is transmitted by I
2
C module
(2)Data is acknowledged by I2C Master
(3)Last data is not acknowledged by I2C Master
Stop condition
Sequences (1) and (2) are repeated until last transmitted data is not acknowledged (3) by I2C Master.
14.7.5 AVAILABLE I
2
C module COMMAND SEQUENCES FLOWCHART
IDLE
software rese
Write own Address to
I2CSOA
register
Write ,,1——-“ to
I2CSCR
register
Write ,,01——“ to
I2CSCR
register
Read
I2CSCR
register
YES
RR
1’
Read data from
I2CSBUF
register
NO
YES
TREQ = ‘1’
write data
to
NO
I2CSBUF
register
YES
SENDFIN = ‘1’
(Burst) Send is done
Clear SENDFIN bit
NO
YES
RECFIN = ‘1’
(Burst) Receive is
done
NO
Clear RECFIN bit
Figure14.20 Available
I2C MODULE command sequences flowchart
Sep., 2014, Version 0.6 (Preliminary)
88
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
14.8 I2C MODULE INTERRUPT GENER
A
TION
I2C MODULE interrupt flag is automatically asserted when I2C transfer (send or receive a byte) is completed or transfer
error has occurred. I2CSIF flag has to be cleared by software.
Interrupt flag
Function
I2CSIF Internal,
DI2CS
Table14.16
Active level/edge
Flag resets
Vector Natural
priority
Software 0x73
15
I2C MODULE interrupt summary
–
I2C MODULE related interrupt bits have been summarized below. The IE (0xA8) contains global interrupt
ystem disable (0)
/ enable (1) bit called EA.
EIE (0xE8)
Address/Name R/W Bit
7 Bit
6 Bit
5
Bit 4
Bit 3
Bit 2
Bi
1 Bi
0
E8h
EIE
Reset
EI2CS
ESPI
0
R/W
EI2CM EWDI EKEYINT
ERFINT EINT4
EINT3 EINT2
0
0
0
0
0
0
EI2CS
:
Enable I2C MODULE interrupts
EIP (0xF8)
Address/Name R/W Bit
7 Bit
6 Bit
5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
F8h
EIP
PI2CS
PSPI
R/W
PI2CM PWDI PKEY
NT PRFINT PINT4
PINT3 PINT2
Reset
0
0
0
0
0
0
0
0
PI2CS
:
I2C MODULE priority level control (at 1-high-le
EIF (0x91)
Address/Name R/W B
t 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
91h
EIF
I2CS
SP
F
R/W
I2CMF
–
KEYINTF RFINTF
INT4F INT3F INT2F
Reset
0
0
0
0
0
0
0
0
I2CSIF
:
I2C MODULE interr
pt flag
Software should determ
ne th
source of interrupt by check both modules
’
interrupt related bits. It must be cleared by
software writing 0x80. It cannot be set by software.
Sep., 2014, Version 0.6 (Preliminary)
89
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
15. SPI interface
The SPI is a fully configurable SPI master/slave device, which allows user to configure polarity and phase of serial clock
signal SCK.
The SPI allows the microcontroller to communicate with serial peripheral devices. It is also capable of inter-processor
communications in a multi
‐
master system. A serial clock line (SCK) synchronizes shifting and sampling of the information on
the two independent serial data lines. SPI data are simultaneously transmitted and received.
The SPI is a technology independent design that can be implemented in a variety of process technologies.
The SPI system is flexible enough to interface directly with numerous standard product periphera
s from several
manufacturers. The system can be configured as a master or a slave device. Data rates as high as System clock d
v
ded by four
(CLK/4). Clock control logic allows a selection of clock polarity and a choice of two fundamentally different
king protocols to
accommodate most available synchronous serial peripheral devices. When the SPI is configured as a mas
r, software selects
one of four different bit rates for the serial clock.
The SPI automatically drive selected by SSCR (Slave Select Control Register) slave select o
tputs (SS7O
–
SS0O), and
address SPI slave device to exchange serially shifted data.
Error
‐
detection logic is included to support inter-processor communications. A write
collis
n detector indicates when an
attempt is made to write data to the serial shift register while a transfer is in progress. A m
ltiple
‐
master mode
‐
fault detector
automatically disables SPI output drivers if more than one SPI devices simultaneous
attempts to be become bus master.
15.1 KEY FE
A
T
URES
All features listed
elow
re included in the current version of SPI core.
SPI Master
F
l du
le
synchronous serial data transfer
Ma
ter
peration
Multi-master system supported
p to 8 SPI slaves can be addressed
System error detection
Interrupt generation
Supports speeds up to 1/4 up to system clock
Bit rates generated 1/4, 1/8, 1/32, 1/64, 1/128, 1/512 of system clock
Four transfer formats supported
Simple interface allows easy connection to microcontrollers
SPI Slave
Full duplex synchronous serial data transfer
Slave operation
System error detection
Interrupt generation
Supports speeds up to 1/4 of system clock
Simple interface allows easy connection to microcontrollers
Sep., 2014, Version 0.6 (Preliminary)
90
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
Four transfer formats supported
Fully synthesizable, static synchronous design with no internal tri-states
15.2 SPI PINS DESCRIPTION
PIN
TYPE
ACTIVE
DESCRIPTION
Scki_Scko
(P0.0)
INPUT / OUTPUT
–
SPI clock input / output
MISO
(P0.1)
SIMO
(P0.2)
SSO
(P0.3)
INPUT / OUTPUT
INPUT / OUTPUT
OUTPUT
–
–
Master serial data input / Slave serial data output
Slave serial data input / Master serial data output
Slave select output
low
Table15.1
SPI pins description
15.3 SPI HARDWARE DESCRIPTION
15.3.1 BLOCK DIAGRAM
When an SPI transfer occurs, an 8
‐
bit character is shifted out on data pin while a different 8
bit character is simultaneously
shifted in a second data pin. Another way to view this transfer is that an 8
‐
bit shift register i
the master and another 8
‐
bit shift
register in the slave are connected as a circular 16
‐
bit shift register. When a trans
er occurs, this distributed shift register is
shifted eight bit positions; thus, the characters in the master and slave are effectively e
cha
ged.
The central element in the SPI system is the block containing the shift r
an
the read data buffer. The system is
single buffered in the transmit direction and double buffered in the receive dire
his fact means new data for transmission
cannot be written to the shifter until the previous transaction is complete; howev
received data is transferred into a parallel
read data buffer so the shifter is free to accept a second serial character. As long as the first character is read out of the read
data buffer before the next serial character is ready to be transferred, no
verrun condition will occur.
Figure 15.2
SPI Block Diagram
The eight pins are associated with the SPI: the SS, clock pins SCKI, SCKO and SCKEN, master pins MI and MO and slave
pins SOEN, SI and SO.
The SS input pin in a master mode is used to detect mode
‐
fault errors. A low on this pin indicates that some other device in
a multi
‐
master system has become a master and trying to select the SPI MODULE as a slave. The SS input pin in a slave mode
is used to enable transfer.
The SCKI pin is used when the SPI is configured as a slave. The input clock from a master synchronizes data transfer
between a master and the slave devices. The slave device ignore the SCKI signal unless the SS (slave select) pin is active low.
The SCKO and SCKEN pins are used as the SPI clock signal reference in a master mode. When the master initiates a
transfer eight clock cycles is automatically generated on the SCKO pin.
Sep., 2014, Version 0.6 (Preliminary)
91
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
When the SPI is configured as a slave the SI pin is the slave input data line, and the SO is the slave output data line.
When the SPI is configured as a master, the MI pin is the master input data line, and the MO is the master output data line.
15.3.2 INTERNAL REGISTERS
SPI Control Register
The control register may be read or written at any time, is used to configure the SPI System.
SPCR
(0xEC)
Address/Name R/W Bit
7 Bit
6 Bit
5 Bit
4 Bit
3 Bit
2 Bit
1 Bit
0
ECh
R/W SPIE SPE
SPR2 MSTR CPOL CPHA SPR1 SPR0
EIE
Reset
0
0
0
0
0
1
0
0
SPIE
:
SPI interrupt enable
= 0, interrupts are disabled, polling mode is used
= 1, interrupts are enabled
SPE
:
SPI system enable
= 0, system is off
= 1, system is on
MSTR
:
Master/Slave mode select
= 0, slave
= 1, master
CPOL
:
Clock polarity select
= 0, high level; SCK idle low
= 1, low level; SCK idle high
CPHA
:
Clock phase.
. Select one of two different transfer formats
SPR[2:0]
:
SPI clock rate select bits.
See the table below
SPR2 SPR1 SPR0 System
clock divided by
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
4
8
16
32
64
128
256
Slave Select Control Register
The control register may
e read or written at any time. It is used to configure which slave select output should be driven
while SPI master transfer. C
nten
s of SSCR register is automatically assigned on SS7O
‐
SS0O pins when SPI master
transmission starts.
SSCR
(0xEF)
Addr
ss/Name R/W Bit
7 Bit
6 Bit
5 Bit
4 Bit
3 Bit
2 Bit
1 Bit
0
EFh
SSCR
Reset
R/W
SS7
1
SS6
1
SS5
1
SS4
1
SS3
1
SS2
1
SS1
1
SS0
1
SS7
–
SS
= 0, P
n SSxO assigned while Master Transfer
= 1, Pin SSxO is forced to logic 1
SPSR
SPI Status Register
(0xED)
Address/Name R/W Bit
7 Bit
6 Bit
5 Bit
4 Bit
3 Bit
2 Bit
1 Bit
0
EDh R/W
SPIF WCOL
MODF SSCEN
–
–
–
–
Sep., 2014, Version 0.6 (Preliminary)
92
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
EIE
Reset
0
0
0
0
0
1
0
0
SPIF
:
SPI interrupt request. The flag is automatically set to one at the end of an SPI transfer.
WCOL
:
Write collision error status flag. The flag is automatically set if the SPDR is written while a transfer
is in process.
MODF
:
SPI mode-fault error status flag
This flag is set if SS pin goes to active low while the SPI is configured as a master (MSTR = 1)
SSCEN
:
= 1, auto SS assertions enabled
= 0, auto SS assertions disabled
–
SSO always shows contents of SSCR
SPI status register (SPSR) contains flags indicating the completion of transfer or occurrence of system
rrors. All flags are
set automatically when the corresponding event occur and cleared by software sequence. SPIF and WCO
are automatically
cleared by reading SPSR followed by an access of the SPDR. MODF flag is cleared by reading SPSR wit
MODF set followed
by a write to SPCR.
The SSCSEN bit is a enable bit of automatic Slave Select Outputs assertion. When SSCEN is set (‘1’) then during master
transmission the SSXO lines are automatically loaded with contents of SSCR register befor
each
yte transfer, and deasserted
when byte is transferred. When SSCEN bit is cleared the SSXO lines always shows contents of the SSCR register, regardless
of the transmission is in progress or SPI MODULE is in IDLE state.
Receiver and Transmitter Registers
The Transmitted Data Register consists of eight data bits, which will be
on the bus due the next Send operation.
The first send bit is the D.7 (MSB).
SPDR (0xEE)
Address/Name R/W Bit
7 Bit
6 Bit
5 Bi
4 Bit
3 Bit
2 Bit
1 Bit
0
EEh
SPDR
R/W
D.7
0
D.6
0
D
4
0
D.3
0
D.2
1
D.1
0
D.0
0
Reset
The Received Data Register consists of eight data b
s, which were received on the bus due the last Receive operation.
SPDR (0xEE)
Address/Name R/W
it 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
EEh
SPDR
R/W
D.7
0
D.6
0
D.5
0
D.4
0
D.3
0
D.2
1
D.1
0
D.0
0
Reset
15.4 MASTER OPER
A
TIONS
When the SP
MO
ULE core is configured as a SPI master, the transfer is initiated by write to the SPDR register. When the
new byte is writte
to the SPDR register, SPI MODULE begins transfer on the nearest BAUD timer overflow. The serial clock
SCK is gene
ed
y the SPI MODULE. In master mode the SPI MODULE activates the SCKEN to enable the SCK output
driver.
The
MODULE in master mode can select one of the eight SPI slave devices, through the SSxO lines. The SSxO lines
–
Slave Sel
output lines are loaded with contents of the SSCR register (0x03). The SSCEN bit from the SPSR register select
between au
omatic SSxO lines control and software control. When set the automatic Slave Select outputs assertion is enabled.
With SSCEN bit set in master mode the SSXO lines are automatically loaded with contents of SSCR register before each byte
transfer, and deasserted when byte is transferred. When SSCEN bit is cleared the SSXO lines are controlled by the software,
and always shows contents of the SSCR register, regardless of the transmission is in progress or the SPI MODULE is in IDLE
state.
Sep., 2014, Version 0.6 (Preliminary)
93
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
Figure15.3 Automatic
slave select lines assertion
Figure15.4 Sof
ontrolled SSxO lines
15.4.1 MASTER MODE ERRORS
In master mode two system errors can be dete
ted b
the SPI MODULE. The first type of error arises in multiple
‐
master
system when more than one SPI device simultaneousl
tries to be a master. This error is called a Mode Fault. The second error
type, a Write Collision, indicates that MCU trie
to write the SPDR register while transfer was in progress.
MODE FAULT ERROR
Mode fault error occurs when the
MODULE is configured as a master and some other SPI master device will select this
device as if it were a slave. If a Mod
Error occur
:
The MSTR bit is forced to
to reconfigure the SPI MODULE as a slave.
The SPE bit is for
ed to zero to disable the SPI MODULE system
The MODF status
ag is set and an interrupt request is generated
The MODF flag is cleared by r
ading SPSR with MODF set followed by a write to SPCR
Figure15.5
Mode Fault Error generation
Sep., 2014, Version 0.6 (Preliminary)
94
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
WRITE-COLLISION ERROR
A write collision occurs if the SPI MODULE data register is written while a transfer is in progress. The transfer continues
undisturbed, and the write data that caused the error is not written to the shifter. The Write Collision is indicated by the WCOL
flag in SPSR (3) register.
The WCOL flag is set automatically by hardware, when the WCOL error condition occurs. To clear the WCOL bit, user
should execute the following sequence:
Read contents of the SPSR register
Perform access to the SPDR register ( read or write )
Figure15.6 Write
Collision Error in SPI
ast
de
15.5 SL
A
V
E OPER
A
T
IONS
When configured as SPI Slave the SPI MODULE transfer is
tiat
by external SPI master module by assertion of the SPI
MODULE Slave Select input, and generation of the SCK serial cloc
.
Before transfer starts, the SPI master has to assert
ve Select line to determine which SPI slave will be used to
exchange data. The SS is asserted (cleared = 0), the clo
al connected to the SXCK line will cause the SPI MODULE
slave to shift into receiver shift register contents of th
MOSI line, and drives the MISO line with contents of the Transmitter Shift
register. When all eight bits are shifted in/out the SP
MOD
LE generates the Interrupt request by setting the IRQ output.
In SPI MODULE slave mode only one transfer err
r is possible
–
Write Collision Error.
15.5.1 SLAVE MODE ERRORS
In slave mode, only the Write Collisio
Error can be detected by the SPI MODULE.
The Write Collision Error occurs when t
e S
DR register write is performed while the SPI MODULE transfer is in progress.
In SLAVE mode when the CPHA
ared, the write collision error may occur as long as the SS Slave Select line is driven
low, even if all bits are already trans
This is because there is not clearly specified the transfer beginning, and SS driven
low after full byte transfer may indicat
inning of the next byte transfer.
WRITE-COLLISION ER
OR
A write collision oc
urs if the SPI MODULE data register is written while a transfer is in progress. The transfer continues
undisturbed, and the wr
e dat
that caused the error is not written to the shifter. The Write Collision is indicated by the
W
C
OL
flag in SPSR (3) regis
er.
The WCOL f
is
et automatically by hardware, when the WCOL error condition occurs. To clear the WCLO bit, user
should execu
the fol
owing sequence:
Re
d c
ntents of the SPSR register
Perfo
m access to the SPDR register ( read or write )
Figure15.7 Write
Collision Error
–
SPI Slave mode
–
SPDR write during transfer
Sep., 2014, Version 0.6 (Preliminary)
95
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
Figure below shows the WCOL generation, in case that the CPHA is cleared. As it is shown the WCOL generation is cause
by any S{DR register write with SS line cleared. It is done even if the SPI master didn’t generate the serial clock SCK. This
is
because there is not clearly specified the transfer beginning, and SS driven low after full byte transfer may indicate beginning of
the next byte transfer.
Figure15.8 WCOL
Error-SPI Slave mode-SPDR write when CPHA = 0 and SS = 0
15.6 CLOCK CONTROL LOGIC
15.6.1 SPI CLOCK PHASE AND POLARITY CONTROLS
Software can select any of four combinations of serial clock (SCK) pha
e and polarity using two bits in the SPI control
register (SPCR). The clock polarity is specified by the CPOL control bit
which selects an active high or active low clock and has
no significant effect on the transfer format. The clock phase (CP
A) c
ntrol bit selects one of two fundamentally different
transfer formats. The clock phase and polarity should be identical f
the master SPI device and the communicating slave
device. In some cases, the phase and polarity are changed betw
en transfers to allow a master device to communicate with
peripheral slaves having different requirements. The flexibi
the SPI system on the SPI MODULE allows direct interface to
almost any existing synchronous serial peripheral.
15.6.2 SPI MODULE TRANSFER FORMATS
During an SPI transfer, data is simultaneously
ransmitted (shifted out serially) and received (shifted in serially). A serial
clock line synchronizes shifting and sampling of the in
orm
tion on the two serial data lines. A slave select line allows individual
selection of a slave SPI device; slave device
that are not selected do not interfere with SPI bus activities. On a master SPI
device, the slave select line can optionally be u
ed to indicate a multiple
‐
master bus contention.
15.6.3 CPHA EQUALS ZERO TRANS
ER FORMAT
Figure below shows a timing dia
of an SPI transfer where CPHA is 0. Two waveforms are shown for SCK: one for
CPOL equals 0 and another for CPO
s 1. The diagram may be interpreted as a master or slave timing diagram since the
SCK, master in/slave out (MISO), and
er out/slave in (MOSI) pins are directly connected between the master and the slave.
The MISO signal is the output
rom the slave, and the MOSI signal is the output from the master. The SS line is the slave select
input to the slave; the SS pin o
the
aster is not shown but is assumed to be inactive. The SS pin of the master must be high.
This timing diagram functionally depicts how a transfer takes place; it should not be used as a replacement for data
‐
sheet
parametric information.
Figure15.9 CPHA
Equals Zero SPI Transfer Format
When CPHA = 0, the SS line must be disserted and reasserted between each successive serial byte. Also, if the slave
writes data to the SPI data register (SPDR) while SS is active low, a write
‐
collision error results. When CPHA = 1, the SS line
may remain active low between successive transfers (can be tied low at all times). This format is sometimes preferred in
systems having a
single fixed master and a single slave driving the MISO data line.
15.6.4 CPHA EQUALS ONE TRANSFER FORMAT
Figure below is a timing diagram of an SPI transfer where CPHA = 1. Two waveforms are shown for SCK: one for CPOL =
0 and another for CPOL = 1. The diagram may be interpreted as a master or slave timing diagram since the SCK, MISO, and
Sep., 2014, Version 0.6 (Preliminary)
96
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
MOSI pins are directly connected between the master and the slave. The MISO signal is the output from the slave, and the
MOSI signal is the output from the master. The SS line is the slave select input to the slave; the SS pin of the master is not
shown but is assumed to be inactive. The SS pin of the master must be high or must be reconfigured as a general
‐
purpose
output not affecting the SPI.
Figure15.10 CPHA
Equals One SPI Transfer Format
15.7 SPI D
A
TA TRANSFER
15.7.1 TRANSFER BEGINNING PERIOD ( INITIATION DELAY )
All SPI transfers are started and controlled by a master SPI device. As a
he SPI MODULE considers a transfer to
begin with the first SCK edge or the falling edge of SS, depending on the CPH
at selected. When CPHA = 0, the falling
edge of SS indicates the beginning of a transfer. When CPHA = 1, the first edg
on
he SCK indicates the start of the transfer. In
either CPHA format, a transfer can be aborted by taking the SS line hi
h, which causes the SPI slave logic and bit counters to
be reset. The SCK rate selected has no effect on slave operations s
nce
e clock from the master is controlling transfers.
When the SPI is configured as a master, transfers are started by a software write to the SPDR.
15.7.2 TRANSFER ENDING PERIOD
An SPI transfer is technically complete when the SPI
set, but, depending on the configuration of the SPI system,
there may be additional tasks. Because the SPI bit rate do
not affect timing of the ending period, only the fastest rate is
considered in discussions of the ending period. Wh
n the SPI is configured as a master, SPIF is set at the end of the eighth
SCK cycle. When CPHA equals 1, SCK is inactive fo
the l
st half of the eighth SCK cycle.
When the SPI is operating as a slave, the
nding period is different because the SCK line can be asynchronous to the MCU
clocks of the slave and because the slave doe
not have access to as much information about SCK cycles as the master. For
example, when CPHA = 1, where the last
CK edge occurs in the middle of the eighth SCK cycle, the slave has no way of
knowing when the end of the last SCK
ycle is. For these reasons, the slave considers the transfer complete after the last bit of
serial data has been sampled, which
ponds to the middle of the eighth SCK cycle.
The SPIF flag is set at the end o
sfer, but the slave is not permitted to write new data to the SPDR while the SS line is
still low.
15.8 TIMING DIAGRAM
15.8.1 MASTER TRANSMISSION
Figure15.11 Master
mode timing diagram
Sep., 2014, Version 0.6 (Preliminary)
97
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
15.8.2 SLAVE TRANSMISSION
At a beginning of transfer in Slave mode, the data on serial output (MISO) appears on first rising edge after falling edge on
Slave Select (SS) line. Next bits of serial data are driving into MISO line on first rising edge of CLK after SKC active edge (in this
case rising edge of SCK).
Figure15.12 Slave
mode timing diagram
15.9 SPI MODULE INTERRUPT GENER
A
TION
When interrupt is enabled (SPIE bit in SPCR=1), SPI interrupt flag is aut
ma
y asserted when SPI transfer is completed
or transfer error has occurred. SPIIF flag has to be cleared by software.
Figure15.13 Interrupt
generation
Interrupt flag
SPIIF
Function
Internal, SP
Active level/edge
–
Flag resets
Software
Vector
0x73
Natural priority
15
Table15.2
SPI interrupt summary
SPI related interrupt bits have been summarized below. The IE (0xA8) contains global interrupt system disable (0) / enable (1)
bit called EA.
EIE (0xE8)
ddress/Name R/W Bit
7 Bit
6 Bit
5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
EI2CS
ESPI
E8h
EIE
R/W
EI2CM EWDI EKEYINT
ERFINT EINT4
EINT3 EINT2
Reset
ESPI
:
Enable SPI Interrupts
EIP (0xF8)
0
0
0
0
0
0
0
0
Address/Name R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
PI2CS
PSPI
F8h
EIP
R/W
PI2CM PWDI PKEYINT
PRFINT PINT4
PINT3 PINT2
Reset
0
0
0
0
0
0
0
0
Sep., 2014, Version 0.6 (Preliminary)
98
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
PSPI
:
SPI priority level control (at 1-high-level)
EIF (0x91)
Address/Name R/W Bit
7 Bit
6 Bit
5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
91h
EIF
I2CSF
SPIF
R/W
I2CMF
–
KEYINTF RFINTF
INT4F INT3F INT2F
Reset
0
0
0
0
0
0
0
0
SPIIF
:
SPI interrupt flag
It must be cleared by software
Sep., 2014, Version 0.6 (Preliminary)
99
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
16. PWM
A8105 has two channels Pulse width modulator (PWM) output. Every channel PWM has an 8-bit counter with comparator,
a control register (PWMxCON) and two setting registers (PWMxH and PWMxL). User can select clock source by setting
PWMxCON. Enable PWM output and function by setting PWMxEN = 1; otherwise disable PWM output and function by setting
PWMxEN =0. When user set PWMxEN=0, it output LOW single and reload the PWMxL to itself. When the counter is enabled
and matches the content of PWMxH, its output is asserted HIGH; when the counter is overflow, its output is asserted LOW and
reload PWMxL to itself. The pulse frequency and the duty cycle for 8-bit PWM is given by the below equation
Pulse frequency = System clock / 2
pwxclk+1
/ (255-PWMxL)
Duty cycle = (255-PWMxH) / 255-PWMxL)
Noted: PWMxH must be larger then PWMxL. Otherwise, PWM output always is LOW.
16.1 PWM FUNCTIONALITY
PWMxL
/2
PWM counter
/4
CLK
/8
PWxCL
PWM Output
8-bit comparator
/16
/32
PWMxH
PWMxCON
Figure16.1 PWM
Block Digram
The PWM
ins functionality is described in the following table. All pins are one directional.
PIN
ACTIVE TYPE
DESCRIPTION
PWM0
(P1.6)
PWM1
(P1.7)
OUTPUT PWM
0 output
OUTPUT PWM
1 output
PWM PIN define
Table16.1
16.1.1 PWM Registers
PWM0/1 is new design from AMICCOM. They can output pulse width modulation. User adjusts to duty cycle by setting
PWMxH. PWM counter is up counter. PWM counter is not access directly by MCU. User can set or reset PWM counter by
setting PWMxCON. When PWMxEN =1, PWM counter start to count. When PWMxEN=0, PWM counter stop counting and
reload PWMxL to itself. PWxCLK is clock divider. It divide system clock to 2,4,8,16 ,32
and 64 by setting PWxCLK.
Bit Bit Bit Bit
Address/Name R/W
Bit 7
6
5
4
3
Bit 2
Bit 1
Bit 0
Sep., 2014, Version 0.6 (Preliminary)
100
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
A9h
PWM0CON
Reset
R/W PWM0EN
–
–
–
– PW0CLK2
PW0CLK1 PW0CLK0
0
0
0
0
0
0
0
0
PWM0CON: PWM channel 0 control register
PWM0EN: PWM Channel 0 Enable,
[0]
: Disable.
[1]
: Enable.
PWM0CLK[2:0]: PWM Channel 0 Clock select
[000]
: MCU Clock /2
[001]
: MCU Clock / 4
[010]:
MCU Clock / 8
[011]
: MCU Clock / 16
[100]
: MCU Clock / 32
[101]
: MCU Clock / 64
Address/Name R/W Bit
7 Bit
6 Bit
5 Bit
4 Bit
3 Bit
2 Bit
1 Bit
0
AAh
PWM0H
R/W
Reset
0
0
0
0
0
0
0
PWM0H: PWM channel 0 output HIGH
er
Address/Name R/W Bit
7 Bit
6 Bit
5
it 4
Bi
3 Bit
2 Bit
1 Bit
0
ABh
PWM0L
R/W
Reset
0
0
0
0
0
0
PWM0L: PWM chann
equency setting register
Bit B
Bit Bit
Address/Name R/W
Bit 7
6
5
4
3
Bit 2
Bit 1
Bit 0
B0h
PWM1CON
R/W PWM1EN
–
–
–
– PW1CLK2
PW1CLK1 PW1CLK0
Reset
0
0
0
0
0
0
0
0
PWM1
ON: PWM channel 1 control register
PWM1EN: PWM Channel 1 Enable,
[0]
: Disable.
[1]
: Enable.
PWM1CLK[2:0]: PWM Chan
el 1 Clock select
[000]
: MCU Clock / 2
[001]
: MCU Clock / 4
[010]:
MCU Clock / 8
[011]
: MCU Clock / 1
[100]
: MCU Clock
32
[101]
: MCU C
ock
64
Address/Name R/W Bit
7 Bit
6 Bit
5 Bit
4 Bit
3 Bit
2 Bit
1 Bit
0
B1h
PWM1H
R/W
Reset
0
0
0
0
0
0
0
0
PWM1H: PWM channel 1 output HIGH register
Address/Name R/W Bit
7 Bit
6 Bit
5 Bit
4 Bit
3 Bit
2 Bit
1 Bit
0
B2h
PWM1L
R/W
Reset
0
0
0
0
0
0
0
0
PWM1L: PWM channel 1 frequency setting register
Sep., 2014, Version 0.6 (Preliminary)
101
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
17. Watchdog Timer
A8105 has a special timer, called Watchdog Timer. It is a useful programmable clock counter that serves as a time-base
generator, an event timer or system supervisor. User can use be a very long timer with disabled reset function.
17.1 Watchdog timer overview
As can be seen in the figure below, the watchdog timer is driven by the main system clock that is supplied to a series of dividers.
The divider output is selectable and determines interval between timeouts. When the timeout is reached, an interrupt flag will
cause an interrupt to occur if its individual enable bit is set and the global interrupt enable is set. The reset and interrupt are
discrete functions that may be acknowledged or ignored, together or separately for various applications.
Figure 17.1 Wat
Timer architecture
17.2 Watchdog interrupt
WATCHDOG interrupt related bits are shown below.
n int
rrupt can be turned on/off by EIE register, and set into high/low
priority group by EIP register. The IE contains
lobal interrupt system disable (0) / enable (1) bit called EA.
IE register (0xA8)
Address/Na
R/W Bit
7 Bit
6 Bit
5 Bit
4 Bit
3 Bit
2 Bit
1 Bit
0
A8h
IE
Reset
R/W EA
0
–
ET2
0
ES
0
ET1 EX1 ET0 EX0
0
0
0
0
0
EA
:
Enable global interrupts.
EIE (0xE8)
Address/Name R/W Bit
7 Bit
6 Bit
5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
E8h
EIE
Reset
EI2CS
ESPI
0
R/W
EI2CM EWDI EKEYINT ERFINT EINT4 EINT3 EINT2
0
0
0
0
0
0
0
EWDI
:
En
ble Watchdog interrupts
EIP (0xF8)
Address/Name R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
F8h
EIP
Reset
PI2CS
PSPI
0
R/W
PI2CM PWDI PKEYINT
PRFINT PINT4 PINT3 PINT2
0
0
0
0
0
0
0
PWDI
:
Enable Watchdog priority level control (at 1-high-level)
Address/Name R/W Bit
7 Bit
6 Bit
5 Bit
4 Bit
3 Bit
2 Bit
1 Bit
0
Sep., 2014, Version 0.6 (Preliminary)
102
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
D8h
WDCON
Reset
R/W
–
–
–
–
WDIF WTRF EWT
RWT
0
0
0
0
0
0
0
0
WDIF
:
Watchdog Interrupt Flag.
WDIF in conjunction with the Enable Watchdog Interrupt bit (EXIE.5), and EWT, indicates if
watchdog timer event has occurred and what action should be taken. This bit must be cleared by software before exiting the
interrupt service routine, or another interrupt is generated. Setting WDIF in software will generate a watchdog interrupt if
enabled. Timed access registers procedure can be used to modify this bit.
All of bits that generate interrupts can be set or cleared by software, with the same result as if they had been set or cleared by
hardware. That is, interrupts can be generated or pending interrupts can be cancelled by software. The
Watc
dog interrupt
vector is located in 0x63. User can put interrupt service routine to take care watchdog interrupt event.
17.3 Watchdog Timer reset
The Watchdog Timer Reset function works as follows. After initializing the correct timeout inter
al, sof
ware first restarts the
Watchdog using RWT and then enables the reset mode by setting the Enable Watchdog Timer Reset (WDCON.1) bit. At any
time prior to reaching its user selected terminal value, software can set the Reset Watchdog
imer (WDCON.0) bit. If RWT is
set before the timeout is reached, the timer will start over. If the timeout is reached witho
RW
being set, the Watchdog will
reset the MCU. Hardware will automatically clear RWT after software sets it. When the reset
ccurs, the Watchdog Timer Reset
Flag (WDCON.2) will automatically be set to indicate the cause of the reset, howeve
software must clear this bit manually.
17.4 SIMPLE TIMER
The Watchdog Timer is a free running timer. When used as a simple timer with
he reset (EWT=0) and interrupt functions
disabled (EWDI=0), the timer will continue to set the Watchdog Interrupt flag eac
ime the timer completes the selected timer
interval as programmed by WD[1:0]. Restarting the timer using the RW
bit, allows software to use the timer in a polled timeout
mode. The WDIF bit is cleared by software or any reset. The Watchdo
nterrupt is also available for applications that do not
need a true Watchdog Reset but simply a very long timer. The interru
t is
nabled using the Enable Watchdog Timer Interrupt
(EIE.4) bit. When the timeout occurs, the Watchdog Timer will s
the
DIF bit (WDCON.3), and an interrupt will occur if the
global interrupt enable (EA) is set.
A potential Watchdog
set is executed 512 clocks after setting of WDIF flag
. The
Watchdog Interrupt Flag indicates the source of the interr
software must clear WDIF flag. Proper use of the Watchdog
Interrupt with the Watchdog Reset allows interrupt software
vey the system for errant conditions.
17.5 SYSTEM MONITOR
When using the Watchdog Timer as a system monitor, the Watchdog Reset function should be used. If the Interrupt function
were used, the purpose of the watchdog woul
e defeated. For example, assume the system is executing errant code prior to
the Watchdog Interrupt. The interrupt wou
tempo
arily force the system back into control by vectoring the MCU to the interrupt
service routine. Restarting the Watchdog an
ex
ng by an RETI or RET, would return the processor to the lost position prior to
the interrupt. By using the Watchdog
function, the processor is restarted from the beginning of the program, and therefore
placed into a known state.
17.6 WATCHDOG RELAT
D REGISTERS
The watchdog timer has severa
SFR bits that contribute to its operation. It can be enabled to function as either a reset source,
interrupt source, softwa
e polled timer or any combination of the three. Both the reset and interrupt have status flags. The
watchdog also has a bit
hat restarts the timer. A summary table showing the bit locations is below. A description follows.
t n
me
EWDI
PWDI
WD[1:0]
RWT
EWT
WTRF
WDIF
Register
EIE
EIP
CKCON
WDCON
Bit position
EIE.5
EIP.5
CKCON.7-6
WDCON.0
WDCON.1
WDCON.2
WDCON.3
Description
Enable Watchdog Timer Interrupt
Priority of Watchdog Timer Interrupt
Watchdog Interval
Reset Watchdog Timer
Enable Watchdog Timer Reset
Watchdog Timer Reset flag
Watchdog Interrupt flag
A Watchdog timeout reset will not disable the Watchdog Timer, but restarts the timer. In general, software should set the
Watchdog to whichever state is desired, just to be certain of its state. Control bits that support Watchdog operation are
described in next subchapters.
17.6.1. WATCHDOG CONTROL
Watchdog control bits are described below. Please note that access (write) to this register has to be performed using Timed
access registers procedure.
Sep., 2014, Version 0.6 (Preliminary)
103
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
Address/Name R/W Bit
7 Bit
6 Bit
5 Bit
4 Bit
3 Bit
2 Bit
1 Bit
0
D8h
WDCON
Reset
R/W
–
–
–
–
WDIF WTRF EWT
RWT
0
0
0
0
0
0
0
0
WDIF
:
Watchdog Interrupt Flag.
WDIF in conjunction with the Enable Watchdog Interrupt bit (EXIE.5), and EWT, indicates if
watchdog
mer event has
occurred and what action should be taken. This bit must be cleared by software before exiting the interr
pt servi
e routine, or
another interrupt is generated. Setting WDIF in software will generate a watchdog interrupt if enabled. Ti
ccess registers
procedure can be used to modify this bit.
WTRF
:
Watchdog Timer Reset Flag
.
When set by hardware, indicates that a watchdog timer reset has occurred. Set by software d
not generate a watchdog timer
reset. It is cleared by RESET pin, but otherwise must be cleared by software. The watchdo
ime
has no effect on this bit, when
EWT bit is cleared.
EWT
:
Enable Watchdog Timer Reset.
The reset of microcontroller by watchdog timer is controlled by this bit. This bit
effect on the ability of the watchdog timer
to generate a watchdog interrupt. Timed Access procedure must be used to mo
s bit.
0: watchdog timer timeou
t doesn’t reset microcontroller
1: watchdog timer timeout resets microcontroller
RWT
:
Reset Watchdog Timer.
Setting RWT resets the watchdog timer count. Timed Access pro
dur
must be used to set this bit before the watchdog timer
expires, or a watchdog timer reset and/or interrupt will be ge
ted if enabled.
17.6.2 CLOCK CONTROL
The Watchdog timeout selection is made using bits WD[1:0] as shown in the figure.
CKCON register (0x8E)
Address/Name R/
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3 Bit 2 Bit 1 Bit 0
8Eh
R/W WD1
WD0 T2M T1M T0M
MD2 MD1 MD0
CKCON
Re
0
0
0
0
0
0
0
0
Clock control register CKCON(0x8E)
ns WD[1:0] bits select Watchdog timer timeout period. The Watchdog is clocked
directly from CLK pin, and CK
E directly affects its timeout period. It is increased 256 times slower when the core is enabled
CKSE. This allows the watchd
g per
od to remain synchronized with device operation. Number of clocks needed for timeout
does not depend on CKSE, and is constant as shown in table below. The Watchdog has four timeout selections based on the
input CLK clock frequency as
hown in the figure. The selections are a pre-selected number of clocks. Therefore, the
actual timeout interva
is dependent on the CLK frequency.
WD[1:0]
00
Watchdog interval
Number of clocks
131072
2
17
2
20
2
23
2
26
01
10
11
1048576
8388608
67108864
Note that the periods shown above are for the interrupt events. The Reset, when enabled, is generated 512 clocks later
regardless of whether the interrupt is used. Therefore, the actual Watchdog timeout period is the number shown above plus 512
clocks (always CLK pin).
17.7 TIMED ACCESS REGISTERS
Timed Access registers have built in mechanism preventing them from accidental writes. TA is located at 0xEB SFR address.
To do a correct write to such register the following sequence has to be applied:
CLR
EA ;disable interrupt system
MOV
TA, #0xAA
MOV
TA, #0x55
Sep., 2014, Version 0.6 (Preliminary)
104
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
; Any direct addressing instruction writing timed access register.
SETB
EA ;Enable interrupt system
The time elapsed between first, second, and third operation does not matter (any number of Program Wait Sates is allowed).
The only correct sequence is required. Any third instruction causes protection mechanism to be turned on. This means that time
protected register is opened for write only for single instruction. Reading from such register is never protected. WDCON (D8h) is
Timed Access register.
Sep., 2014, Version 0.6 (Preliminary)
105
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
18. ADC (Analog to Digital Converter)
A8105 has two built-in ADCs. One is 8-bits ADC do RSSI measurement as well as carrier detection function. The 8-bit ADC
converting time is 20 x ADC clock periods. The other is 8-channel 12-bits SAR ADC.
18.1 8-bits ADC
Bit
Mode
XADS
0
RSS
1
Standby
None
RX
RSSI / Carrier detect
T
a
ble 17.1 Setting of ADC function
Relative Control Register
Mode Control Register (Address: 0802h)
Bit
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bi
Bit 2
Bit 1
Bit 0
R
W
ARSSI
ARSSI
0
AIF
AIF
0
CD
DFCD
0
W
WWS
FMT
FMT
0
FMS
FMS
0
ADCM
ADCM
0
Name
Reset
ADC Register (Address: 0821h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
R
W
ADC7
RTH7
1
ADC6
RTH6
0
ADC
RTH
0
ADC4
RTH4
1
ADC3
RTH3
0
ADC2
RTH2
0
ADC1
RTH1
0
ADC0
RTH0
1
RSSI Threshold
Reset
ADC Control Register (Address: 0822h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
ADC Control
Reset
W
RSM1
0
RSM0
1
ERSS
0
FSARS
1
—
—
XADS
0
RSS
1
CDM
1
18.1.1 RSSI Measuremen
A8105 supports 8-bits
igital RSSI to detect RF signal strength. RSSI value is stored in ADC [7:0] (1Dh). Fig 17.1 shows a
typical plot of RSSI r
adi
g as a function of input power. This curve is base on the current gain setting of A8105 reference code.
A8105 automatic
ly a
erages 8-times ADC conversion a RSSI measurement until A8105 exits RX mode. Therefore, each
RSSI measuring time is ( 8 x 20 x F
ADC
). Be aware RSSI accuracy is about ± 6dBm.
Sep., 2014, Version 0.6 (Preliminary)
106
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
25
℃
_U-8_RSSI with AGC (1M) L2H
350
300
250
200
150
100
50
RSSI AGC
normal AGC
AGC Fix
0
-110
-100
-90
-80
-70
-60
-50
-40
0
-10
0
10
Input Power (dBm)
Figure 18.1 Typical RSSI c
aracteri
ic.
Auto RSSI measurement for TX Power:
1.
2.
3.
4.
5.
6.
Set wanted F
RXLO
Set RSS= 1 (822h), FSARS= 1 (822h, 4MHz ADC cloc
Enable ARSSI= 1 (802h).
Send RX Strobe command.
In RX mode, 8-times average a RSSI measurement periodically.
Exit RX mode, user can read digital RSSI valu
from ADC [8:0] (1Dh) for TX power.
In step 6, if A8105 is set in direct mode, MCU
all let A8105 exit RX mode within 40 us to prevent RSSI inaccuracy.
Strobe CMD
(SCS,SCK,SDIO)
RX-Stro
RX Mode
MCU Read ADC[7:0]
R
Ready Time
RF-IN
Received Packet
Read 8-bits RSSI value
GIO1 Pin – WTR
(GPIO1S[3:0]=00
)
GIO2 Pin
YNC
(GPIO2S[3:0]
001)
T0
T1
T2
T4
T3
T0-T1: Settling
Time
T2-T3: Receiving
Packet
T3
: Exit
RX mode automatically in FIFO mode
T3-T4: MCU
read RSSI value @ ADC [7:0]
Figure 18.2 RSSI Measurement of TX Power.
Auto RSSI measurement for Background Power:
1.
2.
3.
4.
Set wanted F
RXLO
Set RSS= 1 (822h), FSARS= 0 (822h, 4MHz ADC clock).
Enable ARSSI= 1 (802h).
Send RX Strobe command.
Sep., 2014, Version 0.6 (Preliminary)
107
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
5.
6.
7.
MCU delays min. 140us.
Read digital RSSI value from ADC [8:0] (in 0x81DH and 0x821h) to get background power.
Send other Strobe command to let A8105 exit RX mode.
Strobe CMD
(SCS,SCK,SDIO)
RX-Strobe
MCU Read ADC[7:0]
No Packet
RFI Pin
Min. 140 us
GIO1 Pin – WTR
(GPIO1S[3:0]=0000)
MCU reads 8-bits RSSI value that
is refresh every 40 u
GIO2 Pin – FSYNC
(GPIO2S[3:0]=0001)
T0
T1
T0-T1: MCU
Delay Loop from PLL to RX mode for RSSI measurmen
T1
: Auto
RSSI Measurment is done by 8-times average.
MCU can read RSSI value from ADC [7:0]
Figure 18.3 RSSI Measurement of B
ckground Power.
18.1.2 Carrier Detect
Base on RSSI measurement, user can extend its application
do carrier detect (CD). In Carrier Detect mode, RSSI is refresh
every 5 us without 8-times average. If RSSI level is below
d level (RTH), CD is output high to GIO1 or GIO2 pin to
inform MCU that current channel is busy.
Below is a reference procedure:
1.
2.
Set CDTH (0821h) for absolute RSSI th
hold level (ex. RTH = 80d).
Set GIO2S = [0010] (080Eh) for Car
r D
te
t to GIO2 pin.
(2-1) Set
wanted F
RXLO
(2-2) Set
RSM= [11] (0822h,
0 and hysteresis =6, or CDM =1 and hysteresis =12).
(2-3) Enable
ARSSI= 1 (802h
(2-4) Send
RX Strobe command
(2-5) MCU
enables a
mer delay (min. 100 us).
MCU checks GIO2 pin.
(3-1) If
ADC
≧
CDTH, GIO2 = 0.
(3-2) If
ADC
≦
C
TH-CDM, GIO2 = 1.
(3-3) If ADC loca
es in hysteresis zone, GIO2 = previous state.
Exit RX mo
e.
3.
4.
18.2 12-b
s SAR ADC
A8105 includes a 12-bit successive approximation A/D converter which enables channel selection from 8 channels. The
A/D converter has two operating modes: single mode and continuous mode. The 12-bits A/D converter can be used to perform
the analog input of the specified channel or temperature sensor. Fig 18.5 shows a typical plot of temperature reading for 12-bit
ADC.
Bit
Mode
DTMP BUFS
0
1
0
1
Analog Input
Temperature Sensor
T
a
ble 18.2 Setting of 12-bit ADC function
Sep., 2014, Version 0.6 (Preliminary)
108
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
The conversion time in single mode can be determined as follows:
1
1
t
conv
32
4
MHz CKS
[
1
:
0
]
t
conv
SARE
A/D converter
operation
Waiting for conversion
A/D conversion
Waiting
conversio
Co
ersio
Result
ADC output
OKADB
Figure 18.4 Single Mode for A/D Conversion.
Measurement for Analog Input:
1. Set
ADCCH (0xBCh) for selecting ADC channel.
2. Set
ENADC (0x85Bh) to enable the SAR ADC.
3. Set
MODE (0x85Ah) to select single mode or continuous mode.
4. Enable
ADCE = 1 (0x85Ah)
Measurement for Temperature:
1. Set
ENADC (0x85Bh) to enable the SAR ADC.
2. Set
BUFS = 1 (0x85Ah)
3. Set
DTMP = 1 (0x85B) to enable the temperat
re sensor for 12-bit ADC.
4. Set
MODE (0x85Ah) to select single mode or contin
ous mode.
5. Enable
ADCE = 1 (0x85Ah)
Temperature 12bit ADC value
2100
2000
1900
1800
1700
1600
1500
1400
1300
-40
-30
-20
-10
0
10
20
30
40
50
60
70
80
Temperature (
℃
)
Figure 18.5 Typical 12-bit ADC temperature sensor characteristic curve.
Sep., 2014, Version 0.6 (Preliminary)
109
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
19. Battery Detect
A8105 has a built-in battery detector to check supply voltage (REGI pin). The detecting range is 1.8V ~ 2.5V in 8 levels.
Relative Control Register
Battery detect Register (Address: 082Bh)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
W
R
RGS
RGV1
RGV1
0
RGV0
RGV0
0
PACTL
BDF
0
BVT2
BVT2
0
BVT1
BVT1
1
BVT0
BVT0
1
BDS
DS
0
Battery detect
Reset
—
0
BVT[1:0]: Battery detection threshold.
[000]: 1
.8V.
[001]: 1
.9V.
[010]:
2.0V.
[011]:
2.1V.
[100]:
2.2V.
[101]:
2.3V.
[110]:
2.4V.
[111]:
2.5V.
When REGI < Threshold, BDF= low.
When REGI > Threshold, BDF= high.
Below is the procedure to detect low voltage input (ex. below 2.1V):
1.
2.
3.
4.
Set A8105 in standby or PLL mode.
Set BVT[2:0] (082Bh) = [011] and enable BDS (082Bh) = 1.
After 5 us, BDE is auto clear.
MCU reads BDF (082Bh).
If REGI pin > 2.1
V
,
BDF = 1 (battery high). Else, BDF = 0 (battery low).
Sep., 2014, Version 0.6 (Preliminary)
110
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
20 Power Management
The power consumption of A8105 comes from two parts. One is RF part and the other is digital part (includes MCU core
and peripherals). In the RF part, the idle mode use the minimum power and the TX or RX mode use the maximum power
consumptions. Use changes RF status by setting the strobe control,register(0800h). For more detail information, please refer
chapter 21.1. In this chapter only introduces digital parts. Low power operation is enabled through different power modes setting.
A8105 has various operating mode are referred as normal mode, PM1, PM2, and PM3 (power manager mode 3). Table 20.1
shows the impact of different power modes on systems operation. There are two registers to setting power manager. One is
power control register (PCON, 0x87h) and the other is power control extend register (PCONE, 0xB9h).
In normal mode, user selects different clock be MCU core clock.in CLKSEL[2:0] (PCONE, 0xB9h) then ena
le CKSE
(PCON, 0x87h). User adjusts MCU clocks depends on the required power consumption. CLKSEL[2:0] = 0
110b, the MCU
core clock is the clock sources divide 2 ~ 64. User could adjust the MCU speed to trade-off between t
e pe
ormance and the
power consumption.
BEWARE, please choice CLKSEL firstly then enable CKSE to avoid glitch. Please refer the
reference code or contact AMICCOM
’
s FAE for more details.
User can enable STOP to freeze MCU core clock and all digital peripherals also stop. MCU can
e waked up by hardware
reset, KEY wake up, KEYINT or sleep timer (WOR /TWOR). User set sleep timer, WOR or TWOR before enter STOP mode. In
this condition, it is called PM1. In PM1, all digital circuitry is stop and RF circuitry is active by WOR
Note: Please don
’
t enable STOP and CKSE at the same time.
PCON (087h) Power control
Address/Name R/W Bit
7
Bit 6
Bit 5
Bit 4
Bit 2
Bit 1
Bit 0
87h
R/W SMOD
PCON
–
–
PWE
–
SWB STOP
CKSE
Reset
SWB (Switchback enable)
0
0
0
0
0
0
0
[1]: Enable
[0]: Disable
STOP (Stop mode)
[1]: Enable
[0]: Disable
CKSE (Clock select enable )
[1]: Enable clock select
[0]: Disable clock select
PCONE(0xB9h) Power control exte
Address/Name
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
B9h
PCON
R/W
–
–
QD REGAE
PM2F CLKSEL2 CLKSEL1 CLKSEL0
Reset
0
0
0
0
0
0
0
0
QD (Quick discharge ) : Reserved for internal usage
REGAE(RegA En
le) : Reserved for internal usage
PM2F (Powe
Mode 2 flag) : Reserved for internal usage
CLKSEL[2:0] (Cloc
Select), Select clock source when enable clock select.
[000]: Cl
source div 64 as MCU clock
[001]: Clo
source div 2 as MCU clock
[010]: Cloc
source div 4 as MCU clock
[011]: Clock source div 8 as MCU clock
[100]: Clock source div 16 as MCU clock
[101]: Clock source div 32 as MCU clock
[110]: Clock source div 64 as MCU clock
[111]: Select RTC as CPU clock when CKSE=0; RTC div 2 as CPU clock when CKSE=1
Sep., 2014, Version 0.6 (Preliminary)
111
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
MCU speed
16MHz
RAM
ON
Back to Normal
X
LVR
X
RF
X
Normal
CKSE=0
Normal
CKSE=1
(Low speed)
Idle
16MHz
ON
8/4/2/1 MHz
IRC/RTC
ON
ON
ON
ON
X
X
X
X
H/W reset /
KEYINT
/ Sleep timer
H/W reset / wakeup key
/ Sleep timer
(PM1)
Sleep
(PM2)
OFF
OFF
OFF
OFF
OFF
OFF
OFF
OFF
FF
X
Deep Sleep
(PM3)
256K OFF
H/W reset / wakeup key
2K ON
/ Sleep timer
Table 20.1 Power manager
OFF
X: don
’
t care, it can turn on or off by user setting
Note: PM mode setting refer to chapter 9.2.101
RF
Clock
Generator
XO
0
CL
RUN
RTC
1
1
IRC
0
0
1
2
/64
/2
CLK
MCU
Core
CLKCTRL
CLKSEL =7
RTCS
/4
CLKPMM
3
4
/8
CLKSEL
/16
/32
/64
/2
5
6
7
CKSE STOP
WOR/TWOR
timer
CLKSEL = 0 ~ 7
Figure 20.1 Whole chip clock sources
Sep., 2014, Version 0.6 (Preliminary)
112
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
21 A8105 RF
A8105 integrate 2.4 Ghz GFSK transceiver and use Strobe control register (0800h) to control RF state. There are 6 Strobe
commands to control internal state machine for RF operations. These modes include Sleep mode, Idle mode, Standby mode,
PLL mode, RX mode and TX mode. There are 64Bytes FIFO for data transmitting, receiving. Sleep timer is used for WOR
(Wake On Rx) and time-slotted mode operation.
21.1 Mode Control Register 1 (Address: 0x801h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
W
STRB7
1
STRB6
0
STRB5
1
STRB4
0
STRB3
0
STRB2
0
STRB1
0
STRB0
0
MODEC1
Reset
Use strobe command control RF state.
STRB[7:0]: Strobe command register.
0x80:
Sleep mode.
0x90:
Idle mode.
0xA0:
Standby mode.
0xB0:
PLL mode.
0xC0:
TX mode.
0xD0:
RX mode.
Mode Register (Address: 0x800h)
Name
R/W
Bit 7
Bit 6
Bit 5
Bi
4
Bit 3
Bit 2
Bit 1
Bit 0
W
R
RESETN
FWPRN
FECF
—
FRPR
CRCF
—
C12RN
CER
BFCRN
PLLER
—
Mode
Reset
–
XER
—
TRSR
—
TRER
—
—
—
In A8105, user can read the RF state from mod
register
CER: RF chip enable status.
[0]:
RF chip is disabled.
[1]:
RF chip
ble
.
XER: Internal crystal oscillator en
tatus.
[0]:
Crystal oscillator is disabled.
[1]:
al oscillator is enabled.
PLLE: PLL enabled status.
[0]:
PLL is disabled.
[1]:
PLL i
enab
ed.
TRER: TRX state enab
ed status.
[0]:
TRX is disabled.
[1]
TRX
s enabled.
TRSR: TRX Status R
gister.
[0]:
RX state.
[1]:
X sta
e.
In A8105, user
ont
l RF mode as well as read/write ram. By DPTR access and MOVX instruction, user change RF mode and
know RF
atus.
21.1.1 Str
be Command – Sleep Mode
Refer to Strobe Control Register, user can write 0x80 to Strobe Control Register directly to set RF into Sleep mode.
21.1.2 Strobe Command – Idle Mode
Refer to Strobe Control Register, user can write 0x90 to Strobe Control Register directly to set RF into Idle mode.
21.1.3 Strobe Command – Standby Mode
Refer to Strobe Control Register, user can write 0xA0 to Strobe Control Register directly to set RF into Standby mode.
21.1.4 Strobe Command – PLL Mode
Refer to Strobe Control Register, user can write 0xB0 to Strobe Control Register directly to set RF into PLL mode.
Sep., 2014, Version 0.6 (Preliminary)
113
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
21.1.5 Strobe Command – RX Mode
Refer to Strobe Control Register, user can write 0xC0 to Strobe Control Register directly to set RF into RX mode.
21.1.6 Strobe Command – TX Mode
Refer to Strobe Control Register, user can write 0xD0 to Strobe Control Register directly to set RF into TX mode.
21.2 RF Reset Command
In addition to power on reset (POR), A8105 could issue software reset (80h) to RF by setting Mode Register (0800h). A8105
generates an internal signal
“
RESETN
”
to initial RF circuit. After reset command, RF state is in standby mode a
d re-calibration
is necessary.
21.3 FIFO Accessing Command
Before TX delivery, user only needs to write wanted data into TX FIFO (0x900 ~ 0x93F) in advance. Similarly, user can read RX
FIFO (0x900 ~ 0x93F) once payload data is received. It is easy to delivery data to air. Below is
he procedure of writing TX
FIFO.
Step1: Send
(n+1) bytes TX data in sequence by Data Byte 0, 1, 2 to n.
Step2: Send
TX Strobe command for transmitting.
There are similar steps to read RX FIFO.
Step1: Send
RX Strobe command for receiving data.
Step2: Read
RX data from RX FIFO in sequence by Data Byte 0, 1, 2 to n.
A8105 supports separated 64-bytes TX and RX FIFO. To use A8105
’
s FIFO mode, user just needs to enable FMS =1 (01h). For
FIFO accessing, TX FIFO (write-only) and RX FIFO (read-only) s
re t
same register address 05h. TX FIFO represents
transmitted payload. On the other hand, RX circuitry synchro
es ID Code and stores received payload into RX FIFO.
21.4 Packet Format of FIFO mode
Data whitening(optional)
FEC encoded/decoded(optional)
CRC -16 calculation(optional)
Preamble
4 bytes
e
4 bytes
Payload
(CRC)
Max. 256 bytes
2 bytes
Figure 21.1 Packet Format of FIFO mode
ID code
ID Byte 0
ID Byte 1
ID Byte 2
ID Byte 3
Figure 21.1 ID Code Format
Preamble:
The packet is led by preamble composed of alternate 0 and 1. If the first bit of ID code is 0, preamble shall be 0101
…
0101. In
the contrast, if the first bit of ID code is 1, preamble shall be 1010
…
1010.
Preamble length is recommended to set 4 bytes by PML [1:0] (20h).
ID code:
ID code is recommended to set 4 bytes by IDL=1 (20h). ID Code is sequenced by Byte 0, 1, 2 and 3. If RX circuitry checks the
ID code correct, payload will be written into RX FIFO. In special case, ID code could be set error tolerance (0~ 3bit error) by
ETH [1:0] (21h) for ID synchronization check.
Sep., 2014, Version 0.6 (Preliminary)
114
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
Payload:
Payload length is programmable by FEP [7:0] (03h). The physical FIFO depth is 64 bytes. A8105 also supports logical FIFO
extension up to 256 bytes. See section 16.5 for details.
CRC (option):
In FIFO mode, if CRC is enabled (CRCS=1, 20h), 2-bytes of CRC value is transmitted automatically after payload. In the same
way, RX circuitry will check CRC value and show the result to CRC Flag (00h).
21.5 Transceiver Frequency
A8105 is a half-duplex transceiver with embedded PA and LNA. The receiver is a low-IF architecture cons
of a LNA, down
conversion mixers, polyphase channel filters and IF limiting amplifiers with RSSI. The transmitter is di
ect m
dulation
architecture with
6
dBm maximum output power and 35 dB power control range. For TX or RX frequenc
se
ing, user just
needs to set up one register, CHN (0811h), for frequency agility.
A8105
’s main PLL features are:
Frantional-N to generate RX/TX frequencies for all ISM 2.4 GHz channels
Autonomous calibration loops for stable operation within the operating range
Fast PLL settling to support frequency hopping
During receive operation, the frequency synthesizer works as a local oscillator
transmit operation, the voltage-controlled
oscillator (VCO) is directly modulated to generate the RF transmit signal. Th
fre
cy synthesizer is implemented as a
fractional-N PLL.
FLO
= 2400 + (CHN x 0.5) in [MHz],
where CHN is the channel number, a
dr 0Fh.
A8105
’
s LO frequency F
LO
= F
LO_BASE
+ F
OFFSET.
Therefore, A8105
s very easy to implement frequency hopping by
ONE
register setting, (CHN, 0Fh).
In general, user can plan the
ed channels by a CHN Look-Up-Table between master and
slaves for two-way frequency hopping. Below is the LO fre
block diagram.
DBL
F
LO
F
PFD
F
XTAL
1
0
X 2
PFD
VCO
1/(RRC+1)
Divider
BIP[8:0] +
BFP[15:0]/ 2
F
LO_BASE
16
16
F
LO
+
+
CHN x CHR /
2
F
OFFSET
Figure 21.2 Block Diagram of Local Oscillator
21.5.1 RF Clock
The master clock of A8105 (F
CSCK
= 32/64 MHz) is generated by the PLL clock generator which reference frequency (F
CGR
= 2/4
MHz) is derived from frequency divider of crystal oscillator.
Sep., 2014, Version 0.6 (Preliminary)
115
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
F
XREF
CGR
from crystal oscillator.
GRC
[3
:
0
]
1
, where GRC [3:0] (0Eh) is the divide number to get F
F
CGR
Below is block diagram of system clock where F
XTAL
is the crystal frequency. User can set XS, GRC, CGS to get F
CSCK
=
32/64MHz. F
XREF
is a reference clock to generate F
CGR
and F
SPLL
. After delay circuitry, F
CSCK
(32/64MHz) is derived.
And with BWS setting, the system clock F
SYCK
can be fixed to 8MHz.
CGC
GRC
CGS
CE
XS
CE
F
XREF
System cl
ck
÷
PLL
CE
1
0
(GRC+1)
F
32M/
64MHz
CSC
= 32/64MHz
XI
F
CGR
Delay
F
SYCK
Clock Generator
1
[(1+BWS)*4]
F
SPLL
XO
F
XTAL
Figure 21.3 RF Clock Block Dia
ram
Below is the setting table of system clock for both 1MHz and 2MHz data rate
Data
rate
1M
GRC
[3:0]
[01
CGC
BWS F
CSCK
F
SYCK
F
XTAL
F
XREF
F
CGR
S
CGS
16 MHz
16 MHz
2 MHz
16 MHz
16 MHz
2 MHz
1
1
1
1
0
1
0
1
32MHz 8MHz
64MHz 8MHz
2M
[001
21.5.2 LO Frequency Setting
To set up 2.4GHz LO Frequency (F
can refer to below 4 steps.
1.
Set the base frequency
F
LO_BASE
) by PLL Register II (0812h) and III (0813h).
Recommend to set
F
LO_
SE
~ 2400.001MHz
.
2.
3.
Set channel step
CHSP
500KHz by PLL Register IV (0814h).
Set CHN [7
to get offset frequency by PLL Register I (0811h).
F
OFFSET
= CHN
7:0] * F
CHSP
4.
LO
equen
y is equal to base frequency plus offset frequency.
F
LO
LO_BASE
+ F
OFFSET
F
LO
F
LO_BASE
F
OFFSET
21.5.2.1 How to set F
LO_BASE
Sep., 2014, Version 0.6 (Preliminary)
116
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
Regarding to LO frequency setting, Table 21.1 shows 2400.001 MHz base frequency by 16MHz Xtal.
STEP
ITEMS
F
XTAL
VALUE
16 MHz
NOTE
Crystal Frequency
1
2
3
4
BIP[7:0]
BFP[15:0]
F
LO_BASE
0x96
To get F
LO_BASE
=2400 MHz
To get F
LO_BASE
~ 2400.001 MHz
LO Base frequency
0x0004
~2400.001 MHz
Table 21.1 How to configure F
LO_BASE
21.5.2.2 How to set F
LO
= F
LO_BASE
+ F
OFFSET
Regarding to frequency offset scheme, Table 21.2 shows Channel 11 (2405.001 MHz) by 16MHz Xtal.
STEP
ITEMS
F
LO_BASE
CHR[14:0]
CHN[7:0]
F
OFFSET
F
LO
VALUE
~2400.001 MHz
0x0800
0x0A
5 MHz
~2405.001 MHz
NOTE
1
2
3
4
5
After cofigure B
and
FP
To get F
CHS
= 500 KHz
To set cha
nel number = 10
To get
FSE
=
00 KHz * (CHN) = 5MHz
To
F
LO_BASE
+ F
OFFSET
Table 21.2 How to configure
O
21.6 State machine
In chapter 9.2 and chapter 21.1, user can learn both accessing A
05
’
s
ontrol registers as well as issuing Strobe commands.
21.6.1 Key states
A8105 supports 6 key operation states. Those are,
(1) Standby
mode
(2) Sleep
mode
(3) Idle
mode
(4) PLL
mode
(5) TX
mode
(6) RX
mode
After power on reset or software reset o
deep sleep mode, user has to do calibration process because all control registers are
in initial values. The calibrat
n process of A8105 is very easy, user only needs to issue Strobe commands and enable
calibration registers. After calibration, A8105 is ready to do TX and RX operation. User can start wireless transmission.
Strobe
ommand
Description
b7
b6
b
b
b3
b2
b1
b0
1
1
1
1
1
1
0
0
0
1
1
0
0
1
1
0
0
0
1
0
1
0
1
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
Sleep mode
Idle mode
Standby mode
PLL mode
RX mode
TX mode
RF Register
retention Regulator
RF
Mode
Xtal Osc.
VCO PLL
RX
TX
Strobe Command
Sleep
Idle
Yes
Yes
Yes
Yes
Yes
Yes
ON
ON
ON
ON
ON
ON
OFF
OFF
ON
OFF
OFF
OFF
ON
OFF
OFF
OFF
ON
OFF
OFF
OFF
OFF
OFF
ON
OFF
OFF
OFF
OFF
ON
(1000-xxxx)b
(1001-xxxx)b
(1010-xxxx)b
(1011-xxxx)b
(1101-xxxx)b
(1100-xxxx)b
Standby
PLL
ON
TX
ON
ON
ON
RX
ON
ON
ON
OFF
Sep., 2014, Version 0.6 (Preliminary)
117
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
Remark: x means
“
don
’
t care
”
Table 21.3 Operation mode and strobe command
21.6.2 FIFO mode
This mode is suitable for the requirements of general purpose applications and can be chosen by setting FMS = 1. After
calibration, user can issue Strobe command to enter standby mode where write TX FIFO or read RX FIFO. From standby mode
to packet data transmission, only one Strobe command is needed. Once transmission is done, A8105 is auto back to standby
mode. Figure 21.4 and Figure 21.5 are TX and RX timing diagram respectively. Figure 21.6 illustrates state diagram of FIFO
mode.
Strob
e
C
MD
(SCS,SCK,SDIO)
TX
Next Ins
ucti
n
Strobe
RF settling
(PDL+TDL)
RFO Pin
preamble+ID+payload
Transmitting Tim
GIO1 Pin – WTR
(GI
O
1
S[2:0]=001 )
Auto Back
Standby Mode
T0
T1
T2
Figure 21.4 TX timing of FIFO Mode
Strob
e
C
MD
(SCS,SCK,SDIO)
RX
Next Instruction
strobe
Wait
Packe
RX settling
RFI
Pin
preamble+ID+payload
ReceivingTime
G
I
O1 Pin- WTR
(GI
O
1
S[2:0]=001 )
Auto Back
Standb
y
M
ode
T1
T3
T2
Figure 21.5 RX timing of FIFO Mode
Sep., 2014, Version 0.6 (Preliminary)
118
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
IC reset
(POR, RST-CMD)
AK
PLL
PLL
Auto CAL
.
Standby
3mA
AK
Auto
STB
Sleep
STB
STB
(1.2ms)
Standby
SLEEP
2.5uA
Deep
Sleep
STB
(2ms)
Sleep
(1.2ms)
Deep
Standby
3mA
SLEEP
0.02uA
R-FIFO
W-FIFO
TX / RX
Strobe
PLL
9.5mA
Auto
PDL
Auto
Auto
SYMBOL EXPLAIN
( RX FIFO Full
*
)
( TX FI
Empty
WPLL
9.5mA
State
PLL
9.5mA
RX
settling
TDL
State current
Strobe CMD
ST
(1ms)
MCU delay time
RF auto delay
RX
18mA
TX
1ms
ST
: apply Strobe command
AK
: enable control register
Auto : auto entry
Auto
Auto
RSSI Measure
(ARSSI=1)
Figure 21.6 State diagram of FIFO Mode
Sep., 2014, Version 0.6 (Preliminary)
119
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
22. Encryption and Autherfication
For Bluetooth Low Energy application, it uses AES-128 link layer encryption block with Counter Mode CBC MAC defined in
IETF RFC 3610. A8105 32Kbytes version (A8105F5) integrates AES-128 encryption core for user to encrypt data using AES
algorithm with 128-bits key. The AES core also supports CBC-MAC for authentication.
22.1 AES
AES (Advanced Encryption Standard) is a symmetric block cipher on 128-bits data blocks, it consists 10 encryption rounds
during encryption process. Figure 22.1 shows the structure of the AES encryption. AES can be divided into four basic operation
block where data are treated at either byte or bit level. The array of bytes organized as a 4×4 matrix is als
called
s
ate
”
and
those four basic steps, AddRoundKey, SubBytes, ShiftRows, and MixColumns. These four steps describe
ound of the AES
operation. The number of rounds is depended on the key length, i.e., 10, 12, and 14 rounds for the ke
leng
h of 128, 192, and
256 bits respectively. The block diagram of the AES with 128 bit data is shown below in Figure 22
1.
AES_IN
128-bits
MUX
AES_KEY
128-bits
MUX
AddRoundKey
AES_OUT
128-bits
Key
Expansion
ubBy
iftRows
MixColumns
gure 22.1 Structure of the AES-128 Core.
22.1.1 AddRoundKey
Each byte of the array is ad
ed to
byte of the corresponding array of round subkeys. Excluding the first and the last round,
the AES with 128-bits ro
nd key proceeds for 9 iterations. Round keys are generated by a procedure called round key
expansion or key sched
ling.
hose sub-keys are derived from the original key by XOR the two previous columns. For columns
that are in multiples o
fou
, the process involves round constants addition, S-Box and shift operations.
22.1.2 SubBytes
This operation is
non-linear byte substitution. It composes of two sub-transformations; multiplicative inverse and affine
transform
tion. In most implementations, these two sub-steps are combined into a single table lookup called S-Box.
22.1.3 Sh
tRows
This step is a simple permutation process, operates on individual rows, i.e. each row of the array is rotated by a certain
number of byte positions.
22.1.3 MixColumns
The MixColumns transformation is a substitution step that makes of arithmetic over GF(2
8
). Column vector is multiplied by a
fixed matrix where bytes are treated as a polynomial of degree less than 4.
22.2 CCM
CCM is an authenticated encryption algorithm designed to provide both authentication and confidentiality. It is only defined for
block ciphers with a block length of 128 bits. It uses encryption algorithm to generate encrypted and authenticated data at the
same time. The AES-CCM process is shown in Figure 22.2.
Sep., 2014, Version 0.6 (Preliminary)
120
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
AES-128
Encryption
AES-128
Encryption
A1
A2
Payload-1
B2
Payload-0
B1
B0
Cipher-0
Cipher-1
AES-128
Encryption
AES-128
Encryption
A
AES-128
Encryption
AES-128
Encryption
MAC
MIC
Figure 22.2 CCM Encryption Proced
CCM authentication starts by defining a sequence of blocks B
0
, B
1
, a
d B
and thereafter CBC-MAC is applied to those blocks
so that the authentication field MIC can be obtained. CCM uses the A
0
, A
and A
2
blocks to generate key-stream that is used to
encrypt the MIC and the payload. Block A
0
is always used to encrypt and d
crypt the MIC. A
1
and A
2
blocks are generated as
needed for encryption or decryption of the payload.
Sep., 2014, Version 0.6 (Preliminary)
121
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
23. Flash memory controller
SFR RELATED REGISTERS
FLASH memory is controlled using
PCON(0x87)’s
PWE bit, FLSHCTRL(0x9A) and
FLSHTMR (0x9B), FLSHTPG(0x9C) and
FLSHTER(0x9D). An SFR register named FLASHCTRL (0x9A) is used to control communication between CPU and flash.
FLSHCTRL(0x9A) is consisted of 6bits used to control all FLASH related operations. Lower five bits of FLSHTMR (0x9B)
named FREQ[4:0] determine real CLK frequency with 1MHz step resolution. FREQ[4:0] after reset is set to 20MHz by default,
provides optimal timing for flash macro. Please contact AMICCOM FAE for more details flash operation reference code.
Address/Name R/W
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
9Ah
FLSHCTRL
R/W CTRL.7
CTRL.6 CTRL.5 CTRL.4 CTRL.3 CTRL.2 CTRL.1 CTRL
Reset
0
0
0
0
0
0
0
0
Address/Name R/W Bit
7 Bit
6 Bit
5 Bit
4 Bit
3 Bit
2 Bit
1 Bit
0
9Bh
FLSHTMR
R/W
Fewq.4 Fe
Fe
.2 Fewq.1 Fewq.0
Reset
0
0
0
0
0
0
0
0
Address/Name
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
9Ch
R/W
FLSHTPG
Reset
0
0
1
0
0
1
1
1
Address/Name R/W Bit
7 Bit
6 Bit
5 Bit
4 Bit
3 Bit
2 Bit
1 Bit
0
9Dh
R/W
FLSHTER
Reset
1
1
1
1
1
0
0
1
Setting higher clock frequency is not supported since given Flash macro has limited its clock frequency up to 20MHz by Tkp
read cycle time. FLASHCTRL register is write protected by TA enable procedure listed below:
CLR EA
;disable interrupt system
MOV TA, #0xAA
MOV TA, #0x55
MOV FLASHCTRL,#<value> ; Any direct addressing instruction writing FLASHCTRL register.
SETB EA ;Enable
interrupt system
Sep., 2014, Version 0.6 (Preliminary)
122
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
The Program Write Enable (PWE) bit, located in PCON register, is used to enable/ disable PRGROMWR and PRGRRAMWR
pin active during MOVX instructions.
PCON (087h) Power control
Address/Name R/W Bit
7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
87h
R/W SMOD
PCON
–
–
PWE
–
SWB STOP
CKSE
Reset
0
0
0
0
0
0
0
0
When PWE bit is set to logic 1, the MOVX @DPTR,A instruction writes data located in accumulator register in to
rogram
Memory addressed by DPTR register (active: DPH:DPL). The MOVX @ Rx,A instruction writes data locat
accumulator
register into program memory addressed by
P2 register (bit 15:8)
and Rx register (bit 7:0). Program Memo
can be read by
MOVC only regardless of PWE bit.
CHIP ERASE OPERATION
Chip erase operation is enabled by setting CTRL[5:0]=0x04 of FLSHCTRL register accor
ng to MCU TA enable procedure.
PCON.PWE bit must be also set, then first MOVX instruction writing to program memory sp
ce at address belong to certain
FLASH macro begins sector erase operation. During erase operation MCU is halt
d by asserting FLASHBUSY pin. When
FLASH macro is blank and ready for new programming. To erase another FL
ma
ro, the whole procedure needs to be
repeated with change MOVX address pointing to certain FLASH macro. Prep
ming of whole FLASH macro is executed
automatically without any interaction with user, before real chip erase. It ext
nds
ycle of FLASH macro.
SECTOR ERASE OPERATION
The 16KB Flash macro has 129 sectors (128Bytes each) which can
e er
sed separately. Sector erase operation is enabled by
setting CTRL[5:0] = 0x22 of FLSHCTRL register according to MCU TA
nable procedure. PCON.PWE bit must be also set. The
first MOVX instruction writing to program memory space at sele
ted sector address begins sector erase operation. During
sector erase operation, MCU is galted by asserting FLA
SY pin. When sector has been erased, FLASHBUSY pin is
deactivated and FNOP is automatically written. MCU exe
xt instruction. Selected FLASH macro sector(s) is blank and
ready for new programming. To erase another sectors whole
cedure needs to be repeated. Programming of whole sector is
executed automatically without any interaction with user, before real erase. It extends lifecycle of FLASH macro.
PROGRAM OPERATION
Word program operation is enabled by setting
TRL[5:0]=0x01 of FLSHCTRL register according to MCU TA enable procedure.
PCONE.PWE bit
must be set too, then
ea
h w
te to program memory
space by MOVX instruction addressing
odd bytes
begins word program operation. Durin
rogram operation MCU is halted by asserting FLASHBUSY pin. When word has been
programmed FLASHBUSY pin is d
ed. MCU executes next instruction which can be (i) programming of next memory
word (ii) CTRL[5:0] = 0x00 accordin
CU TA enable procedure. Number of programmed by bytes must be always even
number(2,4,6
…
) . For
exam
e to
program byte at address 0x003, first must be written byte
at address 0x002
then second
MOVX instruction write at ad
ress 0x003 begins physical write to FLASH macro. When number of programmed bytes is not
even then it must be filled with extra neutral byte. The neutral bytes does not program any bit in a FLASH macro.
Note: Flash
memory can program
ed once. Please erase sector firstly if change the content in the flash memory.
Sep., 2014, Version 0.6 (Preliminary)
123
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
24 In Circuit Emulator (ICE)
A8105 support In Circuit Emulator on chip. It is a real-time hardware debugger as a non-intrusive system. It doesn
’
t need
to occupy any hardware resource such as the UART and Timer. User develops firmware complete producing code without any
modification using ICE. It helps user to track down hidden bugs within the application running with microcontroller. The ICE
with Hardware USB dongle provides a powerful SOC development tool with silicon using 2-wire protocol. The ICE fully
supports Keil uVision2/3/4 interface to hardware debuggers. It allows Keil software user to work with uvision2/3/4. For more
detail information, please reference Application note.
24.1 PIN define
Fig 24.1 Th
B connectors
Fig22.2 The Pin define within USB connector
Note: RSTO pin is
en dr
in (od) type active low. It forces logic zero to issue reset. When RSTO is inactive its output is floating, and should
be connected to global
ystem reset with pull-up resistor. This pin can be left unconnected.
There are 10 pin in the ICE connectors. 2-wire ICE only use 2 pins (PIN1 and PIN3). The PIN9 is optional and it can
connects
signal. PIN2 and PIN10 are GND pin. PIN4 is VCCIO pin. The recommended circuit shows as the below figure.
(Fig21.3).
here is a resister (100 ohm) between A8510 and pin connected the connector.
Sep., 2014, Version 0.6 (Preliminary)
124
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
Fig 24.3 The connections between A8105 and
nnectors
24.2 ICE Key feature
The ICE supports source level debugging, 2 hardware breakpoi
t, a
o refresh of all register and In System
Programming (ISP). User can use ICE to download firmware by
il s
ware or AMICCOM tool.
Sep., 2014, Version 0.6 (Preliminary)
125
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
25. Application circuit
Below are AMICCOM
’
s ref. design circuits. For more details, please refer AMICCOM standard module , MD8105-Axx.
CRYSTAL(32.768KHz/CL=12.5pF)
Y3
3
2
REGI
1
4
R1
100K
RESETN
C1
22p
C2
22p
C3
1U
U1
1 CO
5P 1.27
RTCO
VPP
1
2
30
P1_4/TTDIO
P1_3/C
O
1_2/
P1
P3_7
P1_4
P1_3
P1_2
P1
P1
_7
5
P0_4
P0_3
29
28
27
6
5
24
23
22
21
VPP
RESETN
VDD_S
VDD_D
BPBG
3
RESTN
VDD_S
VDD_D
BP_BG
VDD_R
VDD_A
RFI
1uF
C6
C9
C7
C10
C8
C4
4
1uF
5
P1_0
amc054_QFN40_OTP
330pF
120pF
1uF
L2
3.9nH
6
P0_7/GIO1
P0_6
VREF
7
VDD_A
8
P0_5
L1
5.6nH
3.9pF
RFI
RFO
9
P0_4/DEBUG_EN
P0_3
ANTENNA
L4
L5
C20
10pF
L3
10
RFO
0R
2.4nH
C18
1.2pF
C19
1.2pF
C15
NC
8105
J2
CON/11P 1.27
10nH
VDD_P
C11
NC
C21
100pF
C22
0.1uF
C12
1uF
C13
C5
2.2uF
100pF
Y1
GND
C23
3.3nF
4
1
3
2
GND
CRYSTAL/3.2*2.5 (16MHz/CL=12pF)
Sep., 2014, Version 0.6 (Preliminary)
126
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
26. Abbreviations
ADC
AIF
Analog to Digital Converter
Auto IF
FC
Frequency Compensation
Automatic Gain Control
Bit Error Rate
AGC
BER
BW
Bandwidth
CD
Carrier Detect
CHSP
CRC
DC
Channel Step
Cyclic Redundancy Check
Direct Current
FEC
FIFO
FSK
ID
Forward Error Correction
First in First out
Frequency Shift Keying
Identifier
ICE
In Circuit Emulator
I
2
C
Inter-Integrated Circuit
Intermediate Frequency
Industrial, Scientific and Medical
Local Oscillator
IF
ISM
LO
MCU
PFD
PLL
Micro Controller Unit
Phase Frequency Detector for PLL
Phase Lock Loop
POR
PWM
RX
Power on Reset
Pulse width modulation
Receiver
RXLO
RSSI
SPI
SYCK
TX
Receiver Local Oscillator
Received Signal Strength Indicator
Serial to Parallel Interface
System Clock for digital circuit
Transmitter
TXRF
UART
VCO
XOSC
XREF
XTAL
Transmitter Radio Frequency
Universal Asynchronous Rece
r/T
ansmitter
Voltage Controlled Oscillat
Crystal Oscillator
Crystal Reference frequ
Crystal
Sep., 2014, Version 0.6 (Preliminary)
127
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
27. Ordering Information
Part No.
Package
Units Per Reel / Tray
A8105F5 (32KB)
A81X05F5009AQ6C/Q
A81X05F5009AQ6C
A81X05F5001AQ5A/Q
A81X05F5001AQ5A
A81X05F5001AH
QFN48L, Pb Free, Tape & Reel, -40
℃~
85
℃
QFN48L, Pb Free, Tray, -40
℃~
85
℃
QFN40L, Pb Free, Tape & Reel, -40
℃~
85
℃
QFN40L, Pb Free, Tray, -40
℃~
85
℃
Die form, -40
℃~
85
℃
3K
490EA
3K
490
A
1
0EA
A8105F4 (16KB)
A81X05F4001AQ5A/Q
A81X05F4001AQ5A
A81X05F4001AH
QFN40L, Pb Free, Tape & Reel, -40
℃~
85
℃
QFN40L, Pb Free, Tray, -40
℃~
85
℃
Die form, -40
℃~
85
℃
3K
490EA
100EA
Sep., 2014, Version 0.6 (Preliminary)
128
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
28. Package Information
QFN6*6 48L Outline Dimensions
Top View
Bottom View
Dimensions in inches
Dimensions in mm
Symbol
Min
0.028
0
Nom
0.030
0.001
Max
0.031
0.002
Min
0.7
0.00
Nom
0.75
0.02
Max
0.8
0.05
A
A
1
A
3
0.009 REF.
0.23REF.
0.006
0.008
0.010
0.15
0.2
0.25
b
D
D
2
E
0.240
0.177
0.240
6.0 BSC
4.50
6.0BSC
4.50
0.146
0.146
0.179
0.179
3.70
3.70
4.55
4.55
E
2
0.177
e
L
k
0.016BSC
0.016
0.008
0.4BSC
0.4
0.2
0.013
0.020
0.32
0.48
Sep., 2014, Version 0.6 (Preliminary)
129
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
QFN5*5 32L Outline Dimensions
Top View
Bottom View
0
. 2
C
D
D
2
32
25
25
32
1
24
24
8
17
17
8
0.25
C
9
16
9
e
b
0.10 M
C A B
//
C
Seating Plane
C
C
mensions in inches
Dimensions in mm
Symbol
n
Nom
0.030
Max
0.036
0.002
Min
0.70
0.00
Nom
0.75
Max
0.90
0.05
A
3
b
.028
0.000
0.001
0.02
0.010 REF
0.010
0.20 REF
0.25
0.007
0.193
0.049
0.193
0.049
0.012
0.200
0.141
0.200
0.141
0.18
4.90
1.25
4.90
1.25
0.30
5.10
3.60
5.10
3.60
D
0.197
5.00
D
2
E
0.106
2.70
0.197
5.00
E
2
e
0.106
2.70
0.020 BSC
0.016
0.50 BSC
0.40
L
0.012
0.020
0.30
0.50
y
0 – 0.004
0 – 0.10
Sep., 2014, Version 0.6 (Preliminary)
130
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
29. Top Marking Information
Sep., 2014, Version 0.6 (Preliminary)
131
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
Part No.
Pin Count
Package Type
:
QFN
Dimension
Mark Method
Character Type
:
Arial
:
A81X05F4001AQ5A
:
40
:
5*5 mm
:
Laser Mark
Sep., 2014, Version 0.6 (Preliminary)
132
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
Part No.
Pin Count
Package Type
:
QFN
Dimension
Mark Method
Character Type
:
Arial
:
A81X05F5001AQ5A
:
40
:
5*5 mm
:
Laser Mark
Sep., 2014, Version 0.6 (Preliminary)
133
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
30. Reflow Profile
Actual Measurement Graph
Sep., 2014, Version 0.6 (Preliminary)
134
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
31. Tape Reel Information
Cover / Carrier Tape Dimension
Unit: mm
Cover
TYPE
P
A0
B0
P0
P1
D0
D1
E
F
W
K0
t
tape
width
3.2
5
±
0.1
4.35
±
0.1
5.25
±
0.1
1.75
±
0.1
1.75
±
0.1
1.75
±
0.1
1.75
±
0.1
5.5
±
0.05
5.5
±
0.05
5.5
±
0.05
7.5
±
0.1
1.25
±
0.1
1.2
5
±
0.1
±
0.05
1.25
±
0.1
1.15
0.3
±
0.05
0.3
3.25
±0.1
4.35
±
0.1
5.25
±
0.1
8
±
0.1
8
±
0.1
8
±
0.1
4
±
0.2 2
±
0.1 1.5
±
0.1
4
±
0.2 2
±
0.1 1.
4
±
0.2 2
±
0
1 1.5
±
0.1
12
±
0.3
12
±
0.3
12
±
0.3
16
±
0.3
9.3
±
0.1
9.3
±
0.1
9.3
±
0.1
QFN 3*3
QFN 4*4
QFN 5*5
QFN 6*6
1.
1.5
1.5
0.3
±
0.05
0.3
±
0.05
13.3
±
0.1
12
±
0.1 6.3
±
0.1 6.3
±
0.1 4
±
0.2 2
±
0.1 1.5
±
0.1 1.5
±
0.5
±
0.2
REEL DIMENSIONS
T
L
R
D
N
M
K
Unit: mm
TYPE
QFN3*3/4*4/5*5
QFN6*6
G
N
M
D
K
L
R
12.9
±
0.5
17
±
0.5
102 REF
±
2.0
102 REF
±
2.0
2.3
±
0.2
2.3
±
0.2
13.15
±
0.35
13.15
±
0.35
2.0
±
0.5
2.0
±
0.5
330
±
3.0
330
±
3.0
19.6
±
2.9
19.6
±
2.9
Sep., 2014, Version 0.6 (Preliminary)
135
AMICCOM Electronics Corporation
A8105
2.4GHz FSK/GFSK SoC
32. Product Status
Data Sheet Identification
Product Status
Definition
Objective
Planned or Under Development
This data sheet contains the design specifications
for product development. Specifications may
change in any manner without notice.
Preliminary
Engineering Samples
and First Production
This data sheet contains preliminary data, and
supplementary data will be published
t a later
date. AMICCOM reserves the right to make
changes at any time without noti
order to
improve design and supply
he
st possible
product.
No Identification
Obsolete
Noted Full Production
Not In Production
This data sheet contai
s the f
nal specifications.
AMICCOM reserves the r
ht to make changes at
any time without notic
in order to improve design
and supply the best poss
ble product.
This data she
contains specifications on a
product th
as b
n discontinued by AMICCOM.
The data
s printed for reference information
only.
RF ICs
AMICCOM
Headquarter
A3, 1F, No.1, Li-Hsin 1
st
Rd., Hsinchu Science Park,
Hsinchu, Taiwan 30078
Tel: 886-3-5785818
Shenzhen Office
Rm., 2003, DongFeng Building, No. 2010,
Shennan Zhonglu Rd., Futian Dist., Shenzhen, China
Post code: 518031
Web Site
Sep., 2014, Version 0.6 (Preliminary)
136
AMICCOM Electronics Corporation
