numaker tomato user manual - nuvoton · 2016. 9. 30. · numaker tomato sep. 30, 2016 page 1 of 25...
TRANSCRIPT
NuMaker Tomato
Sep. 30, 2016 Page 1 of 25 Rev 1.00
NU
MA
KE
R T
OM
AT
O U
SE
R M
AN
UA
L
ARM®
926EJ-S
32-bit Microprocessor
NuMaker Tomato User Manual
The information described in this document is the exclusive intellectual property of Nuvoton Technology Corporation and shall not be reproduced without permission from Nuvoton.
Nuvoton is providing this document only for reference purposes of NuMicro microcontroller based system design. Nuvoton assumes no responsibility for errors or omissions.
All data and specifications are subject to change without notice.
For additional information or questions, please contact: Nuvoton Technology Corporation.
www.nuvoton.com
NuMaker Tomato
Sep. 30, 2016 Page 2 of 25 Rev 1.00
NU
MA
KE
R T
OM
AT
O U
SE
R M
AN
UA
L
Table of Contents
1 Overview ............................................................................................. 3
2 Hardware Features ................................................................................ 4
2.1 NuMaker Tomato Board Features .................................................................. 4
2.2 NUC976DK62Y Features ............................................................................. 5
3 Board Extension Interfaces ....................................................................... 7
4 Getting Started with NuMaker Tomato ........................................................ 10
4.1 Download Software Package and USB CDC Driver ............................................ 10
4.2 Install Nuvoton USB CDC Driver ................................................................... 10
4.3 Copy Software Package to MicroSD Card ........................................................ 11
4.4 Connect and Set Up Hardware ..................................................................... 11
4.5 Open USB CDC Serial COM Port .................................................................. 12
5 Example of Executing Sample Code .......................................................... 14
6 Appendix ........................................................................................... 15
6.1 Schematics ............................................................................................ 15
6.2 Python API ............................................................................................. 22
6.2.1 I2C (pysmbus) ................................................................................................. 22
6.2.2 SPI (spidev) .................................................................................................... 22
6.2.3 GPIO (gpio) .................................................................................................... 22
6.2.4 PWM (pwm).................................................................................................... 23
6.2.5 ADC (adc) ...................................................................................................... 23
6.2.6 UART(pyserial) ................................................................................................ 23
7 REVISION HISTORY ............................................................................ 24
NuMaker Tomato
Sep. 30, 2016 Page 3 of 25 Rev 1.00
NU
MA
KE
R T
OM
AT
O U
SE
R M
AN
UA
L
1 OVERVIEW
NuMaker Tomato is an open development board. The NuMaker Tomato development platform
enables you to design prototypes for Internet of Things (IoT) devices, Gateway / Router or audio stream application and Ethernet industrial control, using hardware and an API that are similar to those offered for Arduino boards.
The platform is based on Nuvoton 300MHz ARM9 SoC which is highly integrated System-on-Chip (SOC) design, The SoC provides features such as 10/100Mbps Ethernet, high-speed USB 2.0 host/device ports, and built-in 64M Byte DDRII memory .
The NuMaker Tomato uses the NUC976DK62Y as the target microprocessor. Figure 1-1 shows the NuMaker Tomato board.
Figure 1-1 NuMaker Tomato Board
NuMaker Tomato
Sep. 30, 2016 Page 4 of 25 Rev 1.00
NU
MA
KE
R T
OM
AT
O U
SE
R M
AN
UA
L
2 HARDWARE FEATURES
2.1 NuMaker Tomato Board Features
MPU: NUC976DK62Y with ARM® ARM926EJ-S™ processor core running up to 300 MHz
Built-in 64M Byte DDRII memory
8 MB SPI Flash
USB CDC (Communications Device Class) port
10/100Mbps Ethernet
Stereo Audio Headphone out
Mono Microphone input
1.5W Mono Speaker output
MicroSD card slot up to 32G Byte
USB 2.0 High Speed Host
USB 2.0 High Speed Device
Figure 2-1 NuMaker Tomato Board Features
NuMaker Tomato
Sep. 30, 2016 Page 5 of 25 Rev 1.00
NU
MA
KE
R T
OM
AT
O U
SE
R M
AN
UA
L
2.2 NUC976DK62Y Features
Core
– ARM® ARM926EJ-S™ processor core running up to 300 MHz – Supports 16 KB instruction cache and 16 KB data cache
Embedded SRAM and ROM
– Embedded 64MB DDRII – Supports up to four booting modes:
USB / eMMC / NAND Flash / SPI Flash
Ethernet MAC Controller
– Supports IEEE Std. 802.3 CSMA/CD protocol – Supports packet time stamping for IEEE Std. 1588 protocol – Supports 10 and 100 Mbps operations – Supports RMII interface to Ethernet physical layer PHY – Supports Ethernet physical layer PHY management through MDC and MDIO interface
USB 2.0 Controller
– Supports USB Revision 2.0 specification – Supports one set of USB 2.0 High-Speed (HS) Device/Host with embedded transceiver – Supports one set of USB 2.0 High-Speed (HS) Host with embedded transceiver – Supports 2048 Bytes internal SRAM for USB host function and 4096 Bytes internal
SRAM for USB device function
Flash Memory Interface
– Supports NAND Flash interface – Supports 8-bit data bus width – Supports SLC and MLC type NAND Flash device – Supports 512 B, 2 KB, 4 KB and 8 KB page size NAND Flash device – Supports ECC4, ECC8, ECC12, ECC15 and ECC24 BCH algorithm for ECC code
generation, error detection and error correction – Supports eMMC Flash interface
I2S Controller
– I2S interface Supports both mono and stereo Supports both record and playback Supports 8-bit, 16-bit, 20-bit and 24-bit data precision Supports master and slave mode
– PCM interface Supports 2 slots mode to connect 2 devices Supports 8-bit, 16-bit, 20-bit and 24-bit data precision Supports master mode
JPEG Codec
– Supports Baseline Sequential mode JPEG codec function compliant with ISO/IEC 10918-1 international JPEG standard
Crypto Engine
– PRNG – Supports 64-bit, 128-bit, 192-bit and 256-bit key generation – DES / 3DES / AES / SHA / HMAC – Supports both encryption and decryption
Periphery
NuMaker Tomato
Sep. 30, 2016 Page 6 of 25 Rev 1.00
NU
MA
KE
R T
OM
AT
O U
SE
R M
AN
UA
L
– UART/ SPI / I2C / 4-channel PWM / 12-bit ADC / CAN
NuMaker Tomato
Sep. 30, 2016 Page 7 of 25 Rev 1.00
NU
MA
KE
R T
OM
AT
O U
SE
R M
AN
UA
L
3 BOARD EXTENSION INTERFACES
NU1
NU1 Name
Pin 1 GND
Pin 2 VDD3
Pin 3 RESET
Pin 4 VDD3
Pin 5 VIN5
Pin 6 GND
Pin 7 GND
Pin 8 VIN5
NU3
NU3 Name MPU Pin
Pin 1 9 (SW3) GPF10
Pin 2 10 (LED2)
GPD7
Pin 3 ADC7 AIN7
Pin 4 ADC6 AIN6
Pin 5 ADC5 AIN5
Pin 6 ADC4 AIN4
NU2
NU2 Name MPU Pin
Pin 1 2 GPA10
Pin 2 1 GPA11
Pin 3 PWM0 GPA12
Pin 4 PWM1 GPA13
Pin 5 PWM2 GPA14
Pin 6 PWM3 GPA15
Pin 7 GND GND
Pin 8 AVDD3 AVDD3 V
Pin 9 SDA I2C SDA
Pin 10 SCK I2C SCL
NuMaker Tomato
Sep. 30, 2016 Page 8 of 25 Rev 1.00
NU
MA
KE
R T
OM
AT
O U
SE
R M
AN
UA
L
NU4
NU2 Name MCU Pin
Pin 1 RX UART RX
Pin 2 TX UART TX
Pin 3 8 GPI4
Pin 4 7 GPI3
Pin 5 6 GPB2
Pin 6 5 GPB3
Pin 7 4 GPA8
Pin 8 3 GPA9
NU5
NU6
Name MCU Pin
NU6 NU6 MCU Pin
Name
VIN5 VIN5 Pin 1 Pin 2 VIN5 VIN5
11 GPA0 Pin 3 Pin 4 GPA1 12
13 GPA2 Pin 5 Pin 6 GPA3 14
15 GPA4 Pin 7 Pin 8 GPA5 16
17 GPA6 Pin 9 Pin 10 GPA7 18
19 GPG6 Pin 11 Pin 12 GPG7 20
21 GPG8 Pin 13 Pin 14 GPG9 22
23 GPI7 Pin 15 Pin 16 GPI8 24
25 GPI9 Pin 17 Pin 18 GPI10 26
NU5 Name MCU Pin
Pin 1 SPICLK SPI CLK
Pin 2 VDD3 3.3V
Pin 3 MISO SPI MISO
Pin 4 MOSI SPI MOSI
Pin 5 SS SPI CS
Pin 6 GND GND
NuMaker Tomato
Sep. 30, 2016 Page 9 of 25 Rev 1.00
NU
MA
KE
R T
OM
AT
O U
SE
R M
AN
UA
L
27 GPI11 Pin 19 Pin 20 GPI12 28
29 GPI13 Pin 21 Pin 22 GPI14 30
31 GPI15 Pin 23 Pin 24 GPJ0 32
33 GPJ1 Pin 25 Pin 26 GPJ2 34
35 GPJ3 Pin 27 Pin 28 GPJ4 36
TX0(UART) GPE0 Pin 29 Pin 30 GPE1 RX0(UART)
39(LED3) GPH1 Pin 31 Pin 32 NC NC
VDD3 VDD3 Pin 33 Pin 34 VDD3 VDD3
GND GND Pin 35 Pin 36 GND GND
NuMaker Tomato
Sep. 30, 2016 Page 10 of 25 Rev 1.00
NU
MA
KE
R T
OM
AT
O U
SE
R M
AN
UA
L
4 GETTING STARTED WITH NUMAKER TOMATO
4.1 Download Software Package and USB CDC Driver
Please download the software package from Nuvoton’s official webpage:
http://www.nuvoton.com/opencms/resource-download.jsp?tp_GUID=SW1020160914071736
The software package includes the Linux 3.10 kernel, precompiled Python bin, USB Wi-Fi driver, Periphery sample code and application demo code.
Please download Nuvoton USB CDC driver from Nuvoton’s official webpage:
http://www.nuvoton.com/opencms/resource-download.jsp?tp_GUID=SW0620160913015934
4.2 Install Nuvoton USB CDC Driver
Please execute the “NuvotonCDC_V1.00.001_Setup.exe” to install the driver.
Figure 4-1 Software Package List
1
2
3
4
NuMaker Tomato
Sep. 30, 2016 Page 11 of 25 Rev 1.00
NU
MA
KE
R T
OM
AT
O U
SE
R M
AN
UA
L
4.3 Copy Software Package to MicroSD Card
Unzip the software package file to SD card. You will see folders and kernel file.
Figure 4-2 Software Package List
4.4 Connect and Set Up Hardware
The hardware setup is shown as Figure 4-2. Connect CN17 (MiniUSB) to a USB port on PC.
Figure 4-3 NuMaker Tomato Hardware Setup
NuMaker Tomato
Sep. 30, 2016 Page 12 of 25 Rev 1.00
NU
MA
KE
R T
OM
AT
O U
SE
R M
AN
UA
L
4.5 Open USB CDC Serial COM Port
Check the COM port number from device manager.
Figure 4-4 Check COM Port Number from Windows Device Manager
1. Use HyperTerminal, Putty or TeraTerm to open the serial COM port, and set the baud rate to 115200.
2. Push the RESET key.
3. Wait the Linux boot up for about 5 sec. If it is finished, you will see the ” ~# “ massage on HyperTerminal.
4.
Figure 4-5 NuMaker Uni and Nu-Link Mini Connection
NuMaker Tomato
Sep. 30, 2016 Page 13 of 25 Rev 1.00
NU
MA
KE
R T
OM
AT
O U
SE
R M
AN
UA
L
NuMaker Tomato
Sep. 30, 2016 Page 14 of 25 Rev 1.00
NU
MA
KE
R T
OM
AT
O U
SE
R M
AN
UA
L
5 EXAMPLE OF EXECUTING SAMPLE CODE
User can modify starter.sh to change auto executing Python sample code
Example: Start a HTTP server.
/mnt/mmcblk0p1/Python/bin/python -m SimpleHTTPServer
Figure 5-1 starter.sh
NuMaker Tomato
Sep. 30, 2016 Page 15 of 25 Rev 1.00
NU
MA
KE
R T
OM
AT
O U
SE
R M
AN
UA
L
6 APPENDIX
6.1 Schematics
Title
Size
Docum
ent Num
ber
Rev
Date:
Sheet
of
NU
C972
1.0
NU
C976_TO
MA
TO
B
49
Monday
, A
pril 18,
2016
GPI15
GPI13GPI14
GPB2GPB3
R29
10K
R33
10M
GP
A4
R31
1M
UV
DD
33
SW
2
HP
S602-E
1 24 3
C15
30pF
C16
30pF
DP
0
VS
S
GP
E1
GP
D5
GP
D7
GP
D6
DM
0
GP
D4
GP
D3
DP
1
GP
D0
GP
D1
GP
D2
DM
1
HD
S
RE
SE
Tn
GP
J2
GP
J1
GP
J3
GP
J4
GP
J0
GP
B13
GP
B14
GP
B11
GP
B12
GP
B15
GP
B10
GP
B8
GP
B9
GP
B7
GP
B6
R75
10K
R78
10K
CB
15
0.1
uF
R85
10K
VS
S
XO
UT32K
CP
36
10uF
GP
A1
XIN
32K
Y1
32.7
68K
Hz
GP
A0
VD
D33
TP3
VD
D12
TP4
RE
SE
Tn
CP
15
10uF
CP
24
10uF
CB
25
0.1
uF
AV
DD
33
CP
37
10uF
VS
S
GP
G[0
:1]
VS
S
GP
G[6
:14]
GP
A[0
:15]
VS
S
1 0
GP
B[2
:3]
SW2.2 WDT
0: OFF.
1: ON.
GP
B[6
:15]
GP
I[3:1
5]
NHS-976-1-IN-1M11
GP
J[0
:4]
GP
F[0
:10]
VS
S
GP
E[0
:1]
GP
D[0
:7]
L8
FB
L9
FB
GP
H[0
:1]
L11
FB
VS
S
UV
DD
12
R39
0
VS
S
VD
33
VD
33
CB
23
0.1
uF
VD
D12
CB
13
0.1
uF
VD
D33
CB
14
0.1
uF
VD
D33
VD
D12
VS
S
VD
D33
VD
33
VD
D12
CP
31
10uF
CB
21
0.1
uF
CB
22
0.1
uF
CP
30
10uF
CP
41
10uF
L10
FB
CB
26
0.1
uF
VD
12
L13
FB
VD
18
CP
33
10uF
VS
S
VS
S
VD
12
CP
23
10uF
CB
24
0.1
uF
CP
34
10uF
CP
25
10uF
CP
26
10uF
VS
S
CB
16
0.1
uF
CB
17
0.1
uF
CB
18
0.1
uF
CB
19
0.1
uFC
B20
0.1
uF
MV
DD
18
VS
S
L6
FB
CP
910uF
CP
810uF
CP
42
10uF
CP
12
10uF
CB
80.1
uF
CB
90.1
uF
CB
27
0.1
uF
MV
DD
18
AV
DD
33
VD
33
VD
12
VS
S
VD
18
VS
S
CP
19
10uF
CP
20
10uF
R27
12.1
K
R28
12.1
K
VS
S
AIN
4
AIN
7A
IN6
AIN
5
RE
XT0
TXC9HT10-3.2X1.5mm
RE
XT1
XO
UT
U2
NU
C976D
K62Y
HD
S1
SD
A0/G
PG
12
SC
L/G
PG
03
WS
/GP
G14
4
BIT
CLK
/GP
G13
5
DA
TA
I/G
PG
12
6
DA
TA
O/G
PG
11
7
SY
SC
LK
/GP
G10
8
VD
D33
9
VD
D12
10
VD
DM
18
11
VD
DM
18
12
VD
D12
13
GP
G9
14
GP
G8
15
GP
G7
16
GP
G6
17
PW
M3/G
PA
15
18
PW
M2/G
PA
14
19
PW
M1/G
PA
13
20
PW
M0/G
PA
12
21
GP
A11
22
GP
A10
23
VD
D33
24
GP
A9
25
GP
A8
26
GP
A7
27
GP
A6
28
GP
A5
29
GP
A4
30
GP
A3
31
GP
A2
32
CFG1/GPA133
CFG0/GPA034
AIN635
AIN436
AVSS3337
AVDD3338
AIN739
AIN540
AVREF41
VBAT3342
PWREN43
nWAKEUP44
XIN32K45
XOUT32K46
VDD1247
SCL1/GPI348
SDA1/GPI449
TX1/GPI550
RX1/GPI651
GPI752
GPI853
TX4/GPI954
RX4/GPI1055
GPI1156
TX8/GPI1257
RX8/GPI1358
RTS8/GPI1459
CTS8/GPI1560
VDD3361
PWM0/GPB262
PWM1/GPB363
VSS64S
PI_
SS
0/G
PB
665
SP
I_C
LK
/GP
B7
66
SP
I_D
0_D
O/G
PB
867
SP
I_D
1_D
I/G
PB
968
SP
I_D
2/G
PB
10
69
SP
I_D
3/G
PB
11
70
TX10/G
PB
12
71
RX10/G
PB
13
72
RTS
10/G
PB
14
73
CTS
10/G
PB
15
74
TD
O/G
PJ3
75
TC
K/G
PJ0
76
TM
S/G
PJ1
77
TD
I/G
PJ2
78
nTR
ST/G
PJ4
79
nR
ES
ET
80
VD
D33
81
VD
D12
82
VD
DM
18
83
VD
DM
18
84
VD
D33
85
CM
D/G
PD
086
CLK
/GP
D1
87
D0/G
PD
288
D1/G
PD
389
D2/G
PD
490
D3/G
PD
591
nC
D/G
PD
692
nP
WR
/GP
D7
93
VD
D12
94
VS
S95
RX0/G
PE
196
TX0/GPE097 VDD3398 XIN12M99 XOUT12M100 VSS101 RXERR/GPF9102 CRSDV/GPF8103 RXD1/GPF7104 RXD0/GPF6105 REFCLK/GPF5106 TXEN/GPF4107 TXD1/GPF3108 TXD0/GPF2109 MDIO/GPF1110 MDC/GPF0111 UH_OVC/GPH1112 UD_VBUS/GPH0113 UH_PWR/GPF10114 VDD12115 VDD12116 UVDD12117 DM1118 DP1119 UVDD33120 REXT1121 UVDD12122 UVSS123 DM0124 DP0125 UVDD33126 REXT0127 VSS128
HD
SG
PG
1
GP
G14
GP
G0
GP
G13
GP
G12
GP
G11
GP
G10
GP
G9
GP
G6
GP
G7
GP
G8
GP
A0
GP
A14
GP
A15
GP
A13
GP
A12
GP
A11
VS
S
VS
S
GP
A10
GP
A9
GP
A8
GP
A7
GP
A6
GP
A5
GP
A4
C17
20pF
CP
13
10uF
GP
A1
XIN
GP
A3
GP
A2
C14
20pF
X1
12M
Hz
CR
YS
TA
L_S
3225A
XIN
1
GN
D2
GN
D4
XO
UT
3
GP
A3
VS
S
VS
S
CB
10
0.1
uF
DP0DM0
CP
14
10uF
GP
A5
DM1DP1
CB
11
0.1
uF
CB
12
0.1
uF
GPH1GPH0GPF10
SW2.1 Boot Fm
0: USB.
1: SPI.
GPF1GPF2
GPF0
GPF3GPF4
R30
10K
GPF7
GPF5GPF6
GPF9GPF8
XOUTXIN
GPE0
AIN6AIN4
VS
S
AV
SS
C18
1uF
AIN5AIN7
AVREF
XOUT32KXIN32K
GPI4GPI3
GPI6GPI5
GPI7GPI8GPI9
GPI12GPI11GPI10
Figure 5-1 MPU Schematic
NuMaker Tomato
Sep. 30, 2016 Page 16 of 25 Rev 1.00
NU
MA
KE
R T
OM
AT
O U
SE
R M
AN
UA
L
Title
Size
Docum
ent Num
ber
Rev
Date:
Sheet
of
RM
II1
.0
NU
C9
76
_TO
MA
TO
A
69
Mo
nd
ay
, A
pril 1
8,
20
16
RE
SE
Tn
RE
FC
LK
GP
F[0
:9]
PH
Y_
AV
DD
33
MD
IOG
PF
1M
DC
GP
F0
TX
D1
GP
F3
TX
D0
GP
F2
TX
EN
GP
F4
RE
FC
LK
GP
F5
RX
D0
GP
F6
RX
D1
GP
F7
RX
ER
RG
PF
9C
RS
DV
GP
F8
TX
-
RX
-
RE
SE
Tn
RX
+
RE
G_
OU
T
CN
11
RJ-4
5 8
P8
C_
LE
D R
/A
TX
+1
TX
-2
RX
+3
NC
4
NC
5
RX
-6
NC
7
NC
8S
hie
ld13
Shie
ld14
LE
D-
9L
ED
+10
LE
D-
11
LE
D+
12
MD
I_TP
MD
I_TN
TX
+
LA
N_
VS
PH
Y_
DV
DD
33
PH
Y_
TE
ST
R4
75
.1K
R5
775
R5
875
R5
0N
CR
49
NC
ETH
_XO
R6
075
R5
2N
C
LAN
R5
110K
CR
S
R5
6N
CR
55
10K
NHS-976-1-IN-1M11
CR
SD
V
PH
Y_
VS
R6
25
.1K
R6
1N
C
CO
L
CO
L
CR
S
T1
TS
81
21
C
TX
+16
TX
-14
NC
13
TD
-3
TD
+1
RD
+6
RD
-8
NC
5
RX
-9
RX
+11
CT
2
NC
4
CT
7C
T10
NC
12
CT
15
CP
46
10uF PH
Y_
VS
R4
8300
PH
Y_
VS
R5
35
.1K
MD
I_R
P
MD
I_R
N
PH
Y_
VS
CP
44
10uF
CB
28
0.1
uF
CB
30
0.1
uF
U7
IP1
01
GR
TxE
r/F
xS
D1
Xi
2
Xo
3
Co
l/R
MII
4
TxE
n5
TxD
36
TxD
27
TxD
18
TxD
09
TxC
lk/5
0M
Clk
i10
LE
D0
/Ph
yA
D0
11
LE
D3
/Ph
yA
D3
12
IOV
DD
13
RxC
lk/5
0M
_C
lko
14
RxD
315
RxD
216
Te
stO
n24
MD
IO23
MD
C22
RxE
r/In
t32
21
CR
S/L
ED
Mo
d20
RxD
V/C
RS
_D
V19
RxD
018
RxD
117
nR
st
32
AV
D3
331
MD
iTp
30
MD
iTn
29
Re
gO
ut
28
MD
iRp
27
MD
iRn
26
Ise
t25
EPad33
TX
D1
TX
D0
MD
C
CR
SD
V
RX
D1
RX
D0
MD
IO
RX
ER
R
MD
I_TN
MD
I_TP
TX
EN
MD
I_R
PM
DI_
RN
PH
Y_
VS
ETH
_XI
PH
Y_
VS
R4
41M
C2
420pF
X2
25
MH
zC
RY
STA
L_
S3
22
5A
XIN
1
GN
D2
GN
D4
XO
UT
3
ETH
_XO
ETH
_XI
C2
320pF
PH
Y_
VS
R4
06
.19
K/1
%
PH
Y_
TE
ST
PH
Y_
AD
3P
HY
_A
D0
VD
33
L14
FB
VS
S VD
33
VS
S
PH
Y_
DV
DD
33
CP
45
10uF
PH
Y_
AV
DD
33
PH
Y_
DV
DD
33
PH
Y_
VS
CP
48
10uF
L15
FB
VD
33
VS
S
CP
47
10uF
RE
FC
LK
PH
Y_
VS
C2
27pF
RX
_C
LK
R4
30
PH
Y_
VS
R4
15
.1K
PH
Y_
DV
DD
33
R4
25
.1K
CB
29
0.1
uF
VS
SP
HY
_V
S
R5
975
C3
00
.01
uF
/2K
V
C2
90
.01
uF
/2K
V
PH
Y_
DV
DD
33
R5
4300
PH
Y_
AD
3
C2
60
.1u
FC
25
0.0
1u
F
PH
Y_
VS
C2
70
.1u
FC
28
0.0
1u
F
PH
Y_
AD
0
Figure 5-2 Ethernet Schematic
NuMaker Tomato
Sep. 30, 2016 Page 17 of 25 Rev 1.00
NU
MA
KE
R T
OM
AT
O U
SE
R M
AN
UA
L
Title
Size
Docum
ent Num
ber
Rev
Date:
Sheet
of
PO
WE
R1
.0
NU
C9
76
_TO
MA
TO
A
59
Frid
ay
, A
pril 1
5,
20
16
VD
33
VS
R3
7164K
R3
8100K
VD
12
U6
AM
S1
11
7-1
.2V
IN3
GND1
OUT2
OUT4
OCP
VIN
5V
Q2
2N
39
04
R3
6100K
C2
10
.01
uF
VS
VD
18
U5
AM
S1
11
7-1
.8V
IN3
GND1
OUT2
OUT4
VIN
5V
C1
90
.1u
F
VB
US
D5
V
VC
OM
5V
VS
R3
447K
C2
00
.1u
F
US
B5
V
R3
547K
R1
00
24K
VS
VC
OM
5V
VS
VB
US
D5
V
R1
01
2.7
K
VIN
5V
VD
33
VD
12
VIN
5V
VD
18
VS
SV
S
LE
D9
RE
D
U3
AP
L3211A
VIN
1
GND2
NC3
FA
UL
T4
EN
5B
AT
6
ILIM
7
VO
UT
8
VS
S
VS
S
NHS-976-1-IN-1M11
VS
VS
R9
910K
VS
VS
SVIN
5V
CB
70
.1u
F
VS
CP
747uF
VS
VS
D1
SS
24A
D2
SS
24A
VS
CP
29
10uF
CP
38
10uF
CP
43
10uF
U4
NC
T3
70
5U
-A
VIN
1
GN
D2
EN
3
SE
T4
VO
UT
5
VIN
5V
Figure 5-3 Power Schematic
NuMaker Tomato
Sep. 30, 2016 Page 18 of 25 Rev 1.00
NU
MA
KE
R T
OM
AT
O U
SE
R M
AN
UA
L
Title
Size
Docum
ent Num
ber
Rev
Date:
Sheet
of
SP
I_S
D1
.0
NU
C9
76
_TO
MA
TO
A
79
Mo
nd
ay
, A
pril 1
8,
20
16
R6
410K
R6
610K
R6
5N
C
R6
310K
R6
70
R7
2 33
R6
833
R7
0100K
R7
1100K
SD
_C
MD
SD
_D
2S
D_
D3
+
CP
50
10uF
SD
_D
1
TF
_C
D
SD
_D
0
SD
_C
D
CN
12
Min
i S
D S
OC
KE
T
DA
T1
8D
AT0
7V
SS
6C
LK
5V
DD
4C
MD
3D
AT3
/CD
2D
AT2
1
ANT19
ANT210
SW
_V
DD
11
SW_VSS12
C113C214C315C416
SD
VD
D3
3
SD
_C
LK
VS
S
VS
S
RN
410K
R
12345
678
VS
S
SV
DD
33
GP
B[6
:11
]
+
CP
49
10uF
C0
60
3
SD
SPI
C3
1N
C
CB
31
0.1
uF
CB
32
0.1
uF
NHS-976-1-IN-1M11
U9
W2
5Q
12
8B
V
HO
LD
1
VC
C2
NC
3
NC
4
NC
5
NC
6
CS
7
DO
8W
P9
GN
D10
NC
11
NC
12
NC
13
NC
14
DI
15
CL
K16
U8
W5
5X1
6
/CS
1
DO
2
/WP
3
GN
D4
DI
5C
LK
6/H
OL
D7
VC
C8
SP
I0_
D3
SV
DD
33
SP
I0_
SS
0S
PI0
_D
1S
PI0
_D
2
SP
I0_
D0
VD
33
VS
S
SP
I0_
CL
K
GP
I11
SV
DD
33
SP
I0_
D3
SP
I0_
D0
SP
I0_
CL
K
SP
I0_
SS
0S
PI0
_D
1S
PI0
_D
2
GP
B8
SP
I0_
D0
GP
B7
SP
I0_
CL
K
GP
B6
SP
I0_
SS
0
GP
B11
SP
I0_
D3
GP
B10
SP
I0_
D2
GP
B9
SP
I0_
D1
R6
90
VD
33
CB
33
0.1
uF
VS
S
VS
S
VS
S
GP
I11
SP
I__
RS
T
SV
DD
33
SV
DD
33
SV
DD
33
R72 should be closed to NUC976 &
C31 should be closed to CN12.
VD
33
GP
D[0
:6]
GP
D0
SD
_C
MD
GP
D1
SD
_C
LK
GP
D2
SD
_D
0
GP
D4
SD
_D
2
GP
D3
SD
_D
1
GP
D5
SD
_D
3
GP
D6
SD
_C
D
CIM-H75N2
VS
S
iSD
CL
K
Figure 5-4 MicroSD Schematic
NuMaker Tomato
Sep. 30, 2016 Page 19 of 25 Rev 1.00
NU
MA
KE
R T
OM
AT
O U
SE
R M
AN
UA
L
Title
Size
Docum
ent Num
ber
Rev
Date:
Sheet
of
US
B1
.0
NU
C9
76
_TO
MA
TO
A
89
Mo
nd
ay
, A
pril 1
8,
20
16
GP
H0
DP
0D
M0
DM
1D
P1
VD
33
VS
S
US
B0
_H
DS
HOST-1
USBD-0/HOST-0
NHS-976-1-IN-1M11
VB
US
D5
V
Q7
IS2
30
4
G
DS
DM
0D
P0
R7
34
.7
R7
44
.7
VB
US
ID Q6 Q4 Q5
OPEN OFF OFF ON (USB0_VBUS -> VBUS_NUC)
SHORT ON ON OFF (UV0 -> USB0_VBUS)
VS
S
CP
51
10uF
CN
13
US
B m
iniA
B R
EC
EP
.
V+
1
D-
2
D+
3
ID4
GN
D5
6
78
9
US
B_
VS
VS
S
US
B_
VS
VB
US
VL
DG
PH
0
L17
FB
CN
14
US
B T
YP
E-A
RE
CA
P.
VB
US
1
D-
2
D+
3
GN
D4
Shie
ld5
Shie
ld6
VIN
5V
VIN
5V
US
B_
VS
R7
64
.7D
M1
R7
74
.7
DP
1
L16
FB
VIN
5V
VD
33
VS
S
Q4
IS2
30
3
G
DS
R8
151K
Q6
IS2
30
3
G
DS
Q5
IS2
30
4
G
DS
R8
251KU
SB
0_
ID
US
B_
VS
VB
US
VIN
5V
US
B_
VS
R8
020K VB
US
VL
D
R8
339K
VS
S
R8
410K
US
B0
_ID
US
B0
_H
DS
VB
US
D5
V
Figure 5-5 USB Schematic
NuMaker Tomato
Sep. 30, 2016 Page 20 of 25 Rev 1.00
NU
MA
KE
R T
OM
AT
O U
SE
R M
AN
UA
L
12
M_
IR
ST#
RX
DT
XD
12
M_
I
VCOM
3.3V ICE DAT
ICE CLK
RST#
VS
NHS-976-1-IN-1M11
VD
33
R9
233
R9
333
R9
127
R9
627
U1
3N
UC
12
2Z
D2
AN
QF
N3
3
VB
US
9U
SB
_L
DO
_O
UT
10
D-
11
D+
12
MO
SI0
_0
/PC
.313
MIS
O0
_0
/PC
.214
SP
I0_
CL
K/P
C.1
15
SP
I0_
CS
0/P
C.0
16
VSS8LDO_IN_5V7LDO_OUT6TX1/PB.55RX1/PB.44
SP
I2_
CL
K/P
D.1
26
MIS
O2
_0
/PD
.227
I2C1_SDA/PA.103I2C1_SCL/PA.112
MO
SI2
_0
/PD
.328
INT0/PB.141
RE
SE
T#
31
XT
_IN
30
XT
_O
UT
29
AV
DD
25
PV
SS
32
MOSI1_1/PC.1317 MISO1_1/PC.1218 MOSI1_0/PC.1119 MISO1_0/PC.1020 SPI1_CLK/PC.921 SPI1_CS0/PC.822
ICE_CLK24
ICE_DAT23
EP
AD
33
R8
6
10K
C3
41uF
VS
VD
33
D+
X3 1
2M
Hz
G 4
S 3
G
2 S
1
D-
VC
OM
5V
C3
51uF
ICE_CLKICE_DAT
RXTX
C3
810uF
D+
D-
VC
OM
5V
CP
55
10uF
RX
DT
XD
RX
TX
CN
15
HE
AD
ER
51 2 3 4 5
VD
33
Title
Size
Docum
ent Num
ber
Rev
Date:
Sheet
of
VC
OM
1.0
NU
C9
76
_TO
MA
TO
A
99
Mo
nd
ay
, A
pril 1
8,
20
16
ICE
_D
AT
RS
T#
ICE
_C
LK
C4
020pF
C3
920pF
RS
T#
CB
34
0.1
uF
TXC7V-3.2x2.5mm
CN
17
US
B_
A
min
i_5
P_
B_
TY
PE
GN
D4
DP
3
DM
2
VC
C1
SHIELD5
SHIELD6
VS
VD
33
VC
OM
5V
L18
FB
GN
DV
S
VS
VS
VS
VS
VS
VS
VS
VS
VS
VC
OM
VS
VD
33
VC
OM
VS
12
M_
OC
37
1uF
VS
12
M_
O
Figure 5-6 USB to UART Schematic
NuMaker Tomato
Sep. 30, 2016 Page 21 of 25 Rev 1.00
NU
MA
KE
R T
OM
AT
O U
SE
R M
AN
UA
L
NU
6
HE
AD
ER
18
X2
_F
12
34
56
78
910
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
SW
1
RES
ET
VD
33
GP
J3
GP
G6
GP
I15
GP
I13
GP
I9G
PI1
1
GP
G8
GP
I7
GP
H1
VS
S
GP
J1
GP
E0
VIN
5V
VIN
5V
GP
A1
GP
A3
GP
A5
GP
A7
GP
I12
GP
J0
GP
I14
GP
E1
GP
I8G
PI1
0
GP
G9
GP
J4
GP
G7
GP
J2
AIN
5A
IN4
AIN
7A
IN6
GP
A[0
:15
]
GP
G[6
:9]
GP
G[0
:1]
GP
I[3
:15
]
GP
B[2
:3]
GP
J[0
:4]
GP
D7
GP
A0
GP
A2
GP
A6
GP
A4
RN
20
1 2 3 45678
D52
D50
VS
S
RE
SE
Tn
VS
SV
SS
N3
GP
H1
12
LE
D2
GR
EE
N
VD
33
N2
C2
1uF
1 2
12
LE
D3
GR
EE
NG
PD
7
R9
0
NU
3
HE
AD
ER
6_
F
AD
C0
1
AD
C1
2
AD
C2
3
AD
C3
4
AD
C4
5
AD
C5
6
VD
33
R2
100K
RE
SE
Tn
VD
33
VS
S
GP
G1
GP
G0
VS
SG
PA
15
AV
DD
33
GP
A13
GP
A14
GP
A10
GP
A11
GP
A12
GP
B3
GP
A8
GP
A9
GP
I3G
PB
2
GP
I6G
PI5
GP
I4
Title
Size
Docum
ent Num
ber
Rev
Date:
Sheet
of
CO
NN
1.0
NU
C9
76
_TO
MA
TO
A
29
Mo
nd
ay
, A
pril 1
8,
20
16
VD
33
VIN
5V
AIN
4
AIN
6A
IN5
AIN
7
R1
10K
N1
R3
510
R4
510
R5
510
VIN
5V
NU
1
HE
AD
ER
8_
F
NC
1
VD
D2
MC
U_
RE
SE
T3
3V
CC
4
5V
CC
5
VS
S6
VS
S7
VIN
8
RN
1N
C
12345
678
NU
4
HE
AD
ER
8_
F
D0
/RX
11
D1
/TX
12
D2
3D
34
D4
5D
56
D6
7D
78
NU
2
HE
AD
ER
10
_F
D8
1
D1
0/P
WM
03
D1
1/P
WM
14
D1
2/P
WM
25
D9
2
D1
3/P
WM
36
VS
S7
VR
EF
8I2
C1
_S
DA
9I2
C1
_S
CL
10
VD
33
GP
F1
0
12
LE
D4
RE
D
VD
33
VS
S
VS
SV
SS
GP
E[0
:1]
AV
DD
33
POWER
NU
5
HE
AD
ER
3X2
11
22
33
44
55
66
GP
B13
GP
B15
GP
B12
VD
33
GP
B14
VS
S
GP
B[1
2:1
5]
R6
47K
Q1
2N
39
04
C1
4.7
uF
1 2
VS
S
VS
S
VD
12
TC
K
VD
12
nTR
ST
TD
I
VIN
5V
GP
F1
0G
PH
1
TM
S
VS
S
VS
S
R8 0
VD
33
RE
SE
Tn
CN
5
HE
AD
ER
8
1 2 3 4 5 6 7 8
VS
S
SW
3
KEY
D51
/RESET
/TRST
TDI
TMS
TCK
VSS
TDO
/RESET
SPI1
CLK DISS0
VD33 DOVSS
GND 3.3V
/RESET
3.3V
5VGND
GND
5V
AIN4 AIN5
AIN6
AIN7
D51
D52
SCL1 SDA1
AVDD33
GND
D13/PWM3
D12/PWM2
D11/PWM1
D10/PWM0
D9D8
D7 D6D5D4D3D2D1/TX1
D0/RX1
5V D23
D25
D27
D29
D31
D33
D35
D37
D39
D41
D43
D45
D47
D49
x 3.3V
GND
5V D22
D24
D26
D28
D30
D32
D34
D36
D38
D40
D42
D44
D46
D48
D50
3.3V
GND
NHS-976-1-IN-1M11
GP
D7
GP
J4
GP
J1
GP
J0
GP
J2
GP
J3
RE
SE
Tn
TD
O
GP
F1
0
VS
S
VD
33
Figure 5-7 Connector Schematic
NuMaker Tomato
Sep. 30, 2016 Page 22 of 25 Rev 1.00
NU
MA
KE
R T
OM
AT
O U
SE
R M
AN
UA
L
6.2 Python API
6.2.1 I2C (pysmbus)
write_byte_data(i2c_addr, register, value) – I2C writes a byte
read_byte_data(i2c_addr, register, value) – I2C reads a byte
Example:
from smbus import SMBus
bus = SMBus(1) # Opens /dev/i2c-1
bus.write_byte_data(0x54, 0x13, 0xff)
6.2.2 SPI (spidev)
open(bus, devcie) – Open a SPI device
readbytes(n) – read n byte from SPI
writebytes(list of values) – write a list to SPI
xfer(list of values[, speed_hz, delay_usec, bits_per_word]) –set a SPI device and
send start.
close() – Cloce SPI device
Example:
import spidev
spi = spidev.SpiDev()
spi.open(bus, device)
to_send = [0x01, 0x02, 0x03]
spi.xfer(to_send, 1000))
6.2.3 GPIO (gpio)
setup(channel, inout) – Set gpio channel
setmode(version) –Set Tomato board version (beta or v1)
input(channel) – read gpio
output(channel) – write gpio
Example:
import gpio as GPIO
GPIO.setmode(GPIO.TOMATOV1_BOARD)
GPIO.setup(LED2_PIN, GPIO.OUT)
GPIO.setup(LED3_PIN, GPIO.OUT)
for x in range(5):
GPIO.output(LED2_PIN, GPIO.LOW)
time.sleep(1)
GPIO.output(LED2_PIN, GPIO.HIGH)
time.sleep(1)
NuMaker Tomato
Sep. 30, 2016 Page 23 of 25 Rev 1.00
NU
MA
KE
R T
OM
AT
O U
SE
R M
AN
UA
L
6.2.4 PWM (pwm)
start(channel, duty cycle, frequency) – Set PWM channel
ChangeFrequency(channel, frequency) – change PWM frequency
ChangeDutyCycle(channel, duty cycle) – change PWM duty
stop(channel) – close PWM cannel
Example:
import pwm as PWM
PWMCH=0
PWM.start(PWM_CH, 50, 70000)
PWM.ChangeFrequency(PWM_CH, 100000)
PWM.ChangeDutyCycle(PWM_CH, 30)
PWM.stop(PWM_CH)
6.2.5 ADC (adc)
adc_get(channel) – read adc channel
Example:
import adc as ADC
ADC_0 = 4
print "ADC=%d"%ADC.get(ADC_0)
6.2.6 UART(pyserial)
Serial(port=None, baudrate=9600, bytesize=EIGHTBITS, parity=PARITY_NONE, stopbits=STOPBITS_ONE, timeout=None, xonxoff=False, rtscts=False,
write_timeout=None, dsrdtr=False, inter_byte_timeout=None) – UART set
open() – open UART port
read(size) – read data
readline() – read a line data
write(data) – write data
close() – close UART
Example:
import serial
ser = serial.Serial('/dev/ttyS1', 115200, timeout=0)
print ser.readline()i
NuMaker Tomato
Sep. 30, 2016 Page 24 of 25 Rev 1.00
NU
MA
KE
R T
OM
AT
O U
SE
R M
AN
UA
L
7 REVISION HISTORY
Date Revision Description
2016.09.30 1.00 Initial version
NuMaker Tomato
Sep. 30, 2016 Page 25 of 25 Rev 1.00
NU
MA
KE
R T
OM
AT
O U
SE
R M
AN
UA
L
:
Important Notice
Nuvoton Products are neither intended nor warranted for usage in systems or equipment, any malfunction or failure of which may cause loss of human life, bodily injury or severe property damage. Such applications are deemed, “Insecure Usage”.
Insecure usage includes, but is not limited to: equipment for surgical implementation, atomic energy control instruments, airplane or spaceship instruments, the control or operation of dynamic, brake or safety systems designed for vehicular use, traffic signal instruments, all types of safety devices, and other applications intended to support or sustain life.
All Insecure Usage shall be made at customer’s risk, and in the event that third parties lay claims to Nuvoton as a result of customer’s Insecure Usage, customer shall indemnify the damages and liabilities thus incurred by Nuvoton.