Olimex OLIMEXINO-STM32 User guide

OLIMEXINO-STM32 development board
User's manual
All boards produced by Olimex are ROHS compliant
Document revision C, October 2012
Designed by OLIMEX Ltd, 2012
Page 1 of 19
INTRODUCTION TO DUINO:
Arduino hardware is programmed using a Wiring-based language (syntax + libraries), similar to C++ with some simplifications and modifications, and a Processing-based Integrated Development Environment (IDE).
The project began in Ivrea, Italy in 2005 aiming to make a device for controlling student-built interaction design projects less expensively than other prototyping systems available at the time. As of February 2010 more than 120,000 Arduino boards had been shipped. Founders Massimo Banzi and David Cuartielles named the project after a local bar named Arduino. The name is an Italian masculine first name, meaning "strong friend". The English pronunciation is "Hardwin", a namesake of Arduino of Ivrea.
More information could be found at the creators web page http://arduino.cc/ and in the Arduino Wiki http://en.wikipedia.org/wiki/Arduino
To make the story short - Arduino is easy for beginners who lack Electronics knowledge, but also does not restrict professionals as they can program it in C++ or mix of Arduino/C++ language.
There are thousands of projects which makes it easy to startup as there is barely no field where Arduino enthusiasts to have not been already.
Arduino has inspired two other major derivates - MAPLE and PINGUINO. Based on 8-bit AVR technology the computational power of Arduino boards is modest, this is why a team from MIT developed the MAPLE project which is based on ARM7 STM32F103RBT6 microcontroller. The board has same friendly IDE as Arduino and offers the same capabilities as hardware and software but runs the Arduino code much faster. The Maple project can be found at http://leaflabs.com
In parallel with Arduino another project was started called PINGUINO. This project chose its first implementation to be with PIC microcontrollers, as AVRs were hard to find in some parts of the world like South America so it is likely to see lot of PINGUINO developers are from that part of the world. PINGUINO project founders decided to go with Python instead Java for processing language. For the moment PINGUINO is much more flexible than Arduino as it is not limited to 8bit microcontrollers. Currently the IDE, which has GCC in background, can support 8-bit PIC microcontrollers, 32bit PIC32 (MIPS) microcontrollers and ARM7/CORTEXM3 microcontrollers which makes PINGUINO very flexible because once you make your project you can migrate easily through different hardware platforms and not being bound to a single microcontroller manufacturer. The PINGUINO project can be found at: http://www.pinguino.cc.
Page 2 of 19
BOARD FEATURES:
We entered the Arduino/MAPLE field 5 years after the design was introduced, and this allowed us to see and resolve some of (what we consider) errors made by the Arduino inventors :-)
We had the possibility to read current customer feedback and to implement what they wanted to see in the original Arduino.
1. Original Arduino/MAPLE uses linear power supply, this limits the input
voltage range. We designed the power supply to accept power from 9 to 30V DC thus making it possible to take virtually any power supply adapter on the market, also enable application which are in industrial power supply 24VDC.
2. We carefully selected all components to work reliable in INDUSTIRAL
temperature range -25+85C so the board can be used in INDUSTIRAL applications
while the original design is to Commercial 0 - 70C operating temperature.
3. The original Arduino/MAPLE design is not very reliable for portable ap-
plications as consumes it too much power with the linear voltage regulators, we put ULTRA LOW POWER voltage regulators and the consumption is only few mi­croampers, which enables handheld and battery powered applications.
4. We add Li-Ion rechargable battery power supply option with BUILD-IN on
board charger, so when you attach battery it is automatically charged and kept in this state until the other power source (USB or external adapter) is removed and it AUTOMATICALLY will power the board - no jumpers, no switches!
5. Our board has UEXT connector which allows many existing modules like
RF, ZIGBEE, GSM, GPS to be connected.
6. Our board has SD-MMC card
7. Our board has CAN driver on board
8. Our design allows RTC - Real Time Clock.
9. We made our design noise immune.
10. We use separate voltage regulator for the Analog part, which allows the ADC to be read correctly without the digital noise pickup.
11. Optionally if someone needs higher precision and temperature stability in Analog reading we have provided place on the board for Aref precise source.
12. The LEDs and the BUTTONs are on the edge of the board so there is easy access even if the boards have shields on them.
13. All components are LOWER than the connectors, so the shields do not in­terfere with them.
14. mini USB connector is used which is common and used in most cell phones, so you do not have to buy other cables
15. Original Arduino design had a flaw and the connectors were not spaced at
0.1" thus making breadboarding board use impossible, to keep the compatibility we have the same spacing but we added next to this connector on 0.1" which customer can use with perforated boards.
Page 3 of 19
16. All signals on the connectors are printed on top and on bottom of the board, so when you check with probe you know exactly which port you are measuring.
17. 4 mount holes make board attachment easier
ELECTROSTATIC WARNING:
The OLIMEXINO-STM32 board is shipped in protective anti-static packaging. The board must not be subject to high electrostatic potentials. General practice for working with static sensitive devices should be applied when working with this board.
BOARD USE REQUIREMENTS:
Cables: You'll need mini USB cable for connecting the board to PC. For
programming - the cable you will need depends on the programmer/debugger you use. If you use ARM-USB-TINY or ARM-USB-TINY-H, you will need USB A-B cable, if you use ARM-USB-OCD or ARM-USB-OCD-H, you will need USB A-B cable and RS232 cable.
Hardware: Programmer/Debugger ARM-USB-OCD, ARM-USB-OCD-H,
ARM-USB-TINY, ARM-USB-TINY-H, ARM-JTAG-COOCOX or other
compatible programming/debugging tool if you work with EW-ARM. You will also need ARM-JTAG-20-10 adapter for programming the board since the JTAG connector is the small one (0.05'' step).
Page 4 of 19
SCHEMATIC:
OLIMEXINO-STM32_rev_D
OLIM EX LTD B ULGA RI A
https://w ww.oli mex. com
SW-SIDE_WTCM-T R(3X4)
10uF/6.3V 100nF
100nF 100nF 100nF
4.7 uF/6.3 V
10nF
100nF NA(47pF) NA(47pF)
10pF
10pF
27pF
27pF
47uF/6.3V/TANT B
CE 100uF/35V/6.3x11mm/ RM2.5
10 0nF
82 0pF
CE 470uF/10V/6.3x11mm/RM2. 5
10 uF/6. 3V
2.2uF
2.2uF
100nF
2.2uF
10 0nF
10uF/6. 3V
10uF/6. 3V
10 nF
2.2uF
2.2uF
100nF
10nF
TB3-3.5MM
Op en
NA
NA
NA
NA
1N5819S/SS14
1N5819S/SS14
1N5819S/SS14
1N5819S/SS14
1N5819S/SS14
1N41 48/m ini -mel f
D10:Open/D4:Close
Open
PN2x8
IRLM L640 2
CL10 uH SW6 8
NA
CL470nH/0805/1.76R/250mA
GREEN(0603)
Close
YELLOW(0603)
Close
DW02R
VIN
+5V
+5V
VIN
+5V
+5V
YDJ-1136
RED(0603)
Q8.0 00M Hz/20 pF/HC-49 SM(S MD)
32768Hz/6pF
Open
15k
22k
22R
22R
1.5k
2k 2k
4.7k 4.7k 10k
Clo se
100k 100k 100k
10k 1M
0.47R
0.47R
3k/ 1%
1k /1%
2k
15k
0R(bo ad m oun ted)
120R
10k
0R(bo ad m oun ted)
NA (4.7 k)
NA( 4.7k )
10k
330R
1k
10k
1M
1k
3M
1M
SW-SIDE_WTCM-TR (3X4)
MICRO
GPH127SMT-02x05(PIN7-CUT)
DTA114YKA
STM32F103RBT6(LQFP64)
MC33063ADR(SO8)
MCP7 381 2T-4 20I/O T
MCP2551-I/SN
NA
NA
BH10R
USB-MINI
3.3V
3.3V
3.3V
3.3V3.3V 3.3V
3.3V
3.3V
3.3V
3.3V
3.3V
3.3V3.3V
3.3V
3.3V
3.3V
3.3V_AVCC
3.3V_AVCC
3.3V_AVCC
3.3V_AVCC
MCP1 700 T-33 02E/ MB
MCP1 700 T-33 02E/M B
NA
D0(RXD2),D1(TXD2),D2,D3(LED2),D[4..6],D7(TXD1),D8(RXD1),D9,D10(#SS1),D11(MOSI1),D12(MISO1),D13(SCK1/LED1),D14(CANRX)
TRS T,T DI,TM S/S WDIO,T CK/SWCL K,T DO/SWO ,RESE T
BOOT0
BOOT0
BOOT0
D0(RXD2)
D0(RXD2)
D1(TXD2)
D1(TXD2)
D2
D2
D3(LED2)
D3(LED2)
D3(LED2)
D4
D4
D4
D5
D5
D6
D6
D7(TXD1)
D7(TXD1)
D7(TXD1)
D8(RXD1)D8(RXD1)
D8(RXD1)
D9
D9
D10(#SS1)
D1 0(#S S1)
D10(#SS1)
D11(MOSI1)
D11(MOSI1)
D11(MOSI1)
D12(MISO1)
D12(MISO1)
D12(MISO1)
D13(SCK1/LED1)
D13(SCK1/LED1)
D13(SCK1/LED1)
D13(SCK1/LED1)
D14(CANRX)
D14(CANRX)
D14(CANRX)
D15(A0)
D15(A0)
D16(A1)
D16(A1)
D17(A2)
D17(A2)
D18(A3)
D18(A3)
D19(A4)
D19(A4)
D20(A5)
D20(A5)
D21(CAN_CTRL)
D21(CAN_CTRL)
D22 D23
D23_EXT
D23_EXT
D24(CANTX)
D24(CANTX)
D24(CANTX)
D25(MMC_CS)
D25(MMC_CS)
D25(MMC_CS)
D26
D26
D27
D27
D28
D28
D29(SCL2)
D29(SCL2)
D29(SCL2)
D30(SDA2)
D30(SDA2)
D30(SDA2)
D31(#SS2)
D31(#SS2)
D32(SCK2)
D32(SCK2)
D32(SCK2)
D33(MISO2)
D33(MISO2)
D33(MISO2)
D34(MOSI2)
D34(MOSI2) D34(MOSI2)
D35
D35
D36
D36
D37
D37
DISC
DISC
RESET
RESET
RESET
RESET
RESET
TCK/SWCLK
TCK/SWCLK
TDI
TDI
TDO/SWO
TDO/SWO
TMS/SWDIO
TMS/SWDIO TRST
TRST
UEXT_#CS
UEXT_#CS
USBDM
USBDM
USBDP
USBDP
USB_P
USB_P
VBAT
VBAT
BUT
C1 C2
C3 C4 C5 C6
C7
C8 C9 C10
C11
C12
C13
C14
C15
C16
C1 7
C1 8
C19
C20
C21
C22
C23
C24
C2 5
C2 6
C2 7
C2 8
C29
C30
C31
C32
1
2
3
CAN
1 2
CA N_T
1 2 3 4 5 6
CON1
1 2 3 4 5 6
CON2
1 2 3 4 5 6 7 8
CON3
1 2 3 4 5 6 7 8
CON4
D1
D2
D3
D4
D5
D6
123
D10/D4
1 2
D23_E
1 2 3 4 5 6 7 8
9 10 11 12 13 14 15 16
EXT
FET1
L1
L2
L3
LED1
1 2
LED1_E
LED2
1 2
LED2_E
1 2
LIPO_BAT
3V3 3V3A
A0 A1 A2 A3 A4 A5
D0 D1 D2 D3 D4 D5 D6 D7
D8 D9 D10 D11 D12 D13
D14
GND
GND
GNDA
RST
VIN
PWR_J
PW R_LE D
Q1
Q2
12
R-T
R1 R2
R3
R4
R5
R6 R7
R8 R9 R10
1 2
R1 0_E
R11 R12 R13
R14 R15
R16
R17
R1 8
R1 9
R20
R21
R22
R23
R24
R25
R2 6
R2 7
R28
R29
R30
R31
R32
R33
R34
R35
RST
CD/DAT3/CS
2
CLK/SCLK
5
CMD/DI
3
DAT0/DO
7
DAT1/RES
8
DAT2/RES
1
VDD
4
VSS
6
SD/MMC
1 2 3 4 5 6 7 8 9 10
SWD
T1
BOOT0
60
NRST
7
PA0-WKUP/USART2_CTS/ADC0/TIM2_CH1_ETR
14
PA1/USART2_RTS/ADC1/TIM2_CH2
15
PA2/USART2_TX/ADC2/TIM2_CH3
16
PA3/USART2_RX/ADC3/TIM2_CH4
17
PA4/SPI1_NSS/USART2_CK/ADC4
20
PA5/SPI1_SCK/ADC5
21
PA6/SPI1_MISO/ADC6/TIM3_CH1/TIM1_BKIN
22
PA7/SPI1_MOSI/ADC7/TIM3_CH2/TIM1_CH1N
23
PA8/USART1_CK/TIM1_CH1/MCO
41
PA9/USART1_TX/TIM1_CH2
42
PA10/USART1_RX/TIM1_CH3
43
PA11/USART1_CTS/CANRX/USBDM/TIM1_CH4
44
PA12/USART1_RTS/CANTX/USBDP/TIM1_ETR
45
PA13/JTMS/SWDIO
46
PA14/JTCK/SWCLK
49
PA15/JTDI/TIM2_CH1_ETR/SPI1_NSS
50
PB0/ADC8/TIM3_CH3/TIM1_CH2N
26
PB1/ADC9/TIM3_CH4/TIM1_CH3N
27
PB2/BOOT1
28
PB3/JTDO/TIM2_CH2/TRACESWO/SPI1_SCK
55
PB4/JTRST/TIM3_CH1/SPI1_MISO
56
PB5/I2C1_SMBAI/TIM3_CH2/SPI1_MOSI
57
PB6/I2C1_SCL/TIM4_CH1/USART1_TX
58
PB7/I2C1_SDA/TIM4_CH2/USART1_RX
59
PB8/TIM4_CH3/I2C1_SCL/CANRX
61
PB9/TIM4_CH4/I2C1_SDA/CANTX
62
PB10/I2C2_SCL/USART3_TX/TIM2_CH3
29
PB11/I2C2_SDA/USART3_RX/TIM2_CH4
30
PB12/SPI2_NSS/I2C2_SMBAL/USART3_CK/TIM1_BKIN
33
PB13/SPI2_SCK/USART3_CTS/TIM1_CH1N
34
PB14/SPI2_MISO/USART3_RTS/TIM1_CH2N
35
PB15/SPI2_MOSI/TIM1_CH3N
36
PC0/ADC10
8
PC1/ADC11
9
PC2/ADC12
10
PC3/ADC13
11
PC4/ADC14
24
PC5/ADC15
25
PC6/TIM3_CH1
37
PC7/TIM3_CH2
38
PC8/TIM3_CH3
39
PC9/TIM3_CH4
40
PC10/USART3_TX
51
PC11/USART3_RX
52
PC12/USART3_CK
53
PC13/ANTI_TAMP
2
PC14/OSC32_IN
3
PC15/OSC32_OUT
4
PD0/OSC_IN
5
PD1/OSC_OUT
6
PD2/TIM3_ETR
54
VBAT
1
VDD
32
VDD
48
VDD
64
VDD
19
VDDA
13
VSS
31
VSS
47
VSS
63
VSS
18
VSSA
12
U1
DC
8
FB
5
IS
7
SC
1
SE
2
TC
3
VCC
6
VSS
4
U2
CE
1
PROG
5
VBAT
3
VDD
4
VSS
2
U3
CANH
7
CANL
6
RS
8
RXD
4
TXD
1
VDD
3
VREF
5
VSS
2
U4
3
1 2
GND
VCCRESET
U5
1
2
3 4
5 6
U6
1 2 3 4 5 6 7 8 9 10
UEXT
D+
D-
GND
GND1
GND2
GND3
GND4
ID
VBUS
USB
GND
1
VIN
2
VOUT
3
VR1
GND
1
VIN
2
VOUT
3
VR2
X1-1
X1-2
9-30VDC
+
+
+
POW ERANA LOGDIG ITALDIG ITAL
STM32-MAPLE: PLATFORM & CONNECTORS
GND
0R
0R
10k
47k
BAT TER Y CHARG ER
USB
+
-
LEDS
BUTTONS
STM32-MAPLE_PLATFORM
POWER_SUPPLY
UEXT
USB_DEVICE
Battery Charger
appr. 70 mA charge current
SD/MMC
CAN
Serial wire debug (SWD)
Extension
Designed by Olimex
WWW .OLIME X.CO M/ DE V
BOARD LAYOUT:
Page 6 of 19
Loading...
+ 13 hidden pages