ST STEVAL-PCC009V2 User manual

January 2011 Doc ID 17398 Rev 3 1/53
UM0935
User manual
STEVAL-PCC009V2, IBU universal interface
based on the STM32F103RB
Introduction
The IBU universal interface (UI) is a tool which contains:
■An IBU UI board (STEVAL-PCC009V2), which is an STM32-based USB-to-serial
interface bridge consisting of a configurable 10-pin and 30-pin interface
■Dll files which are available software resources that allow the user to develop customized
GUIs as per application requirements.
This user manual explains the functions of the IBU UI tool (STEVAL-PCC009V2) and how to
use it. IBU UI is a complete tool to rapidly develop application prototypes. On this
demonstration board, the STM32 microcontroller is used as the interface between the PC
and the end device. Due to intelligence available in the STM32 device, various
communication peripherals are multiplexed with GPIOs and ADC and PWM channels in
both a 10-pin and 30-pin interface.
In these interfaces, there is a provision to connect a device which can communicate using
I2C, SPI and UART. Therefore, the IBU UI tool allows the user to connect a serial
communication based device to the PC. At the same time it allows the user to control some
GPIOs available in 10-pin and 30-pin interfaces and set them in input/output modes, as per
application requirements.
Power to the board is provided from a USB mini B-type connector.
DLL files are provided with this tool so that the user can make their own customized PC GUI
as per requirements.
Therefore the IBU UI tool, by taking care of all the microcontroller complexities, provides an
option for the end user to focus on its application development, therefore increasing its
efficiency and time to market.
The IBU UI tool supports two modes:
■Application mode: this PC GUI allows interfacing of the SPI, I2C and UART interface and
controlling the communication parameters with the help of the GUI itself
■DFU mode: this mode allows the user to change the firmware, if required, to suit its
applications.
www.st.com

Contents UM0935
2/53 Doc ID 17398 Rev 3
Contents
1 Section organization of the user manual . . . . . . . . . . . . . . . . . . . . . . . . 7
2 Getting started . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.1 System requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.2 Package contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.3 Software installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.4 Hardware installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.4.1 Power supply . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.4.2 Jumper/header settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.5 Selection of the interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
3 Running the IBU UI tool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
3.1 Using the I2C interface of the 10-pin header . . . . . . . . . . . . . . . . . . . . . . 16
3.1.1 Steps for making the hardware connection . . . . . . . . . . . . . . . . . . . . . . 16
3.1.2 GPIO settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
3.1.3 Using GPIOs in PWM mode settings . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
3.1.4 Using GPIOs as ADC mode settings . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
3.1.5 I2C read and write operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
3.2 Using the SPI interface of the 10-pin connector . . . . . . . . . . . . . . . . . . . . 18
3.2.1 Steps for making hardware connection . . . . . . . . . . . . . . . . . . . . . . . . . 19
3.2.2 GPIO settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
3.2.3 Using GPIOs as PWM settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
3.2.4 Using GPIOs as ADC settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
3.2.5 SPI header settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
3.2.6 SPI read and write operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
3.3 Using the UART(SCI) interface of the 10-pin header . . . . . . . . . . . . . . . . 21
3.3.1 Steps for making hardware connection . . . . . . . . . . . . . . . . . . . . . . . . . 22
3.3.2 GPIO settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
3.3.3 Using GPIOs in PWM settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
3.3.4 Using GPIO in ADC settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.3.5 UART1 (SCI1) header settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.3.6 UART1 (SCI1) read and write operation . . . . . . . . . . . . . . . . . . . . . . . . 23
3.4 Using the I2C interface of the 30-pin header . . . . . . . . . . . . . . . . . . . . . . 24

UM0935 Contents
Doc ID 17398 Rev 3 3/53
3.4.1 Steps for making hardware connection . . . . . . . . . . . . . . . . . . . . . . . . . 25
3.4.2 GPIO settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
3.4.3 Using GPIOs in PWM mode settings . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
3.4.4 Using GPIOs in ADC mode settings . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.4.5 I2C header settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.4.6 I2C read and write operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.5 Using the SPI interface of the 30-pin header . . . . . . . . . . . . . . . . . . . . . . 27
3.5.1 Steps for making hardware connection . . . . . . . . . . . . . . . . . . . . . . . . . 28
3.5.2 GPIO settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
3.5.3 Using GPIOs in PWM mode settings . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
3.5.4 Using GPIOs in ADC mode settings . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
3.5.5 SPI header settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
3.5.6 SPI read and write operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
3.6 Using the UART1(SCI1) interface of the 30-pin header . . . . . . . . . . . . . . 31
3.6.1 Steps for making hardware connection . . . . . . . . . . . . . . . . . . . . . . . . . 32
3.6.2 GPIO settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
3.6.3 Using GPIOs in PWM mode settings . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
3.6.4 Using GPIOs in ADC mode settings . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
3.6.5 UART1 (SCI1) header settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
3.6.6 UART1 (SCI1) read and write operation . . . . . . . . . . . . . . . . . . . . . . . . 34
3.7 Using UART2 (SCI2) interface of 30-pin header . . . . . . . . . . . . . . . . . . . 35
3.7.1 Steps for making hardware connection . . . . . . . . . . . . . . . . . . . . . . . . . 36
3.7.2 Select UART2 (SCI2) interface using DLL software . . . . . . . . . . . . . . . 36
3.7.3 GPIO settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
3.7.4 Using GPIOs in PWM mode settings . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
3.7.5 Using GPIOs in ADC mode settings . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
3.7.6 UART2 (SCI2) header settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
3.7.7 UART2 (SCI2) read and write operation . . . . . . . . . . . . . . . . . . . . . . . . 38
4 Working in DFU mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
Appendix A Schematics and BOM list . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
Appendix B All possible interpretations of the 10-pin interface . . . . . . . . . . . . 47
Appendix C All possible interpretations the of 30-pin interface . . . . . . . . . . . . 48

UM0935 List of tables
Doc ID 17398 Rev 3 5/53
List of tables
Table 1. Section to be referred to for a particular mode of a 10-pin or 30-pin interface . . . . . . . . . . . 7
Table 2. Availability of various communication peripherals and GPIOs on 10-pin and 30-pin
interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Table 3. Number of total GPIOs, PWM GPIOs, and ADC channels in 10-pin and 30-pin headers in
various modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Table 4. BOM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
Table 5. All possible Interpretations of the 10-pin interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
Table 6. All possible interpretations of the 30-pin interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
Table 7. GPIO modes of 10-pin interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
Table 8. GPIO modes of 30-pin interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Table 9. PWM channel settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Table 10. Document revision history . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52

List of figures UM0935
6/53 Doc ID 17398 Rev 3
List of figures
Figure 1. Installation Window. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Figure 2. License Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Figure 3. Destination folder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Figure 4. Installation ongoing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Figure 5. Installation complete . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Figure 6. STEVAL-PCC009V2, IBU universal interface board . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Figure 7. Jumper J1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Figure 8. Jumper J2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Figure 9. Enumeration result . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Figure 10. J1 Interpretation for I2C interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Figure 11. Connection diagram for I2C interface/GPIOs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Figure 12. Transfer sequence of one byte of I2C . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Figure 13. J2 interpretation for SPI interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Figure 14. Connecting diagram for the 10-pin SPI interface/GPIOs . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Figure 15. J1 interpretation for UART (SCI) interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Figure 16. Connection diagram for the 10-pin UART interface/GPIOs . . . . . . . . . . . . . . . . . . . . . . . . 22
Figure 17. J2 Interpretation for I2C interface of 30-pin header . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Figure 18. Connection diagram for I2C interface/GPIOs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Figure 19. Transfer sequence of one byte of I2C . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Figure 20. J2 Interpretation for SPI interface of 30-pin header . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Figure 21. Connection diagram for 30-pin SPI interface/GPIOs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Figure 22. Transfer sequence of one byte of SPI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Figure 23. J2 interpretation for UART1 (SCI1) interface of 30-pin header. . . . . . . . . . . . . . . . . . . . . . 32
Figure 24. Connection diagram for 30-pin UART1 interface/GPIOs . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Figure 25. Transfer sequence of one byte of UART1 (SCI1). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Figure 26. J2 interpretation for UART2 (SCI2) interface of 30-pin header. . . . . . . . . . . . . . . . . . . . . . 36
Figure 27. Connection diagram for 30-pin UART2 interface/GPIOs . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Figure 28. Transfer sequence of one byte of UART2 (SCI2). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Figure 29. Enumeration in DFU mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
Figure 30. Microcontroller section . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
Figure 31. JTAG interface, mode selection switch and power supply section . . . . . . . . . . . . . . . . . . . 41
Figure 32. 10-pin com interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Figure 33. 30-pin com interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Figure 34. PWM signal. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

UM0935 Section organization of the user manual
Doc ID 17398 Rev 3 7/53
1 Section organization of the user manual
The user must go through Section 2.1 to Section 2.4 of this manual to perform the initial
setup that is required to run the IBU UI tool. After reading these sections, the user can
understand how to install the software and hardware setup.
To choose how to select a communication interface, the user must read Section 2.5, this
section explains the seven modes (as shown in Tab l e 1 ) that are available in the 10-pin and
30-pin header and how to select which interface mode is best suited to the development of
their application.
After this, the user must decide which communication interface of a 10-pin or 30-pin header
should be used. As shown in Ta b l e 1 below, Section 3 is documented in such a manner that
the user need only refer to the section corresponding to the communication interface to be
used. For instance, if the user wants to use the UART2 interface mode of the 30-pin header,
they need only refer to Section 3.7 of this document.
Section 4 explains how to use the DFU capability of this tool. This section needs to be
referred to when there it is necessary to update the firmware of the microcontroller of this
tool.
Table 1. Section to be referred to for a particular mode of a 10-pin or 30-pin
interface
Header Interface Refer to section
10-pin header
I2C mode 3.1
SPI mode 3.2
UART mode 3.7
30-pin header
I2C mode 3.7
SPI mode 3.7
UART1 mode 3.7
UART2 mode 3.7

Getting started UM0935
8/53 Doc ID 17398 Rev 3
2 Getting started
2.1 System requirements
In order to use the IBU universal interface (IBU UI) tool with a Windows operating system, a
recent version of Windows, such as Windows 2000 or Windows XP, must be installed on the
PC.
The version of the Windows OS installed on the PC may be determined by clicking on the
“System” icon in the control panel.
2.2 Package contents
The IBU UI tool includes the following items:
●Hardware content:
– One board
– BOM list
–Schematic
●Software content:
– DFU firmware
– DLL files of the I2C, SPI and UART interface of the 10-pin header
– DLL files of the I2C, SPI, and UART1 and UART2 interface of the 30-pin header
– Source code (including DFU)
●Documentation:
– User manual (to work in functional mode)
– User manual (to work in DFU mode)
– Help file on how to use the DLL file
2.3 Software installation
The DLLs are provided with the tool, mainly in the form of a CD as a part of the package.
The folder contains the setup files.
●Step1: as soon as the user clicks the setup.exe icon, the following window appears:

UM0935 Getting started
Doc ID 17398 Rev 3 9/53
Figure 1. Installation Window
●Step 2: read the license file and click the “Next” button if you accept the license.
Figure 2. License Window

Getting started UM0935
10/53 Doc ID 17398 Rev 3
●Step 3: select the folder in which to install the software. By default it installs the
software in the following path: C:\Program Files\STMicroelectronics\USB to serial
interface SDK\Dll&Libraries
Figure 3. Destination folder
●Step 4: after selecting the folder and clicking the “Next” button, the software starts
installing.
Figure 4. Installation ongoing

UM0935 Getting started
Doc ID 17398 Rev 3 11/53
Figure 5. Installation complete
After clicking the “Finish” button, the software is installed in the directory selected or in the
default directory. The shortcut of this software is also available in the Start menu. The help
file on how to use DLL is also available in the same directory.
2.4 Hardware installation
Figure 6 below shows a snapshot of the IBU UI board.
Figure 6. STEVAL-PCC009V2, IBU universal interface board
30-pin
10-pin
20-pin

Getting started UM0935
12/53 Doc ID 17398 Rev 3
2.4.1 Power supply
The board is directly powered by the USB mini B-type connector J4 (bus powered). There is
a power LED D2 available onboard, as soon as the board is powered, using the USB mini-B
cable, it lights up.
2.4.2 Jumper/header settings
●J1: J1 is the 10-pin header available on the IBU UI board. There are 8 GPIOs, GND,
and VDD (3.3 V) lines available, as shown in Figure 7 below:
Figure 7. Jumper J1
●J2: J2 is the 30-pin header available on the IBU UI board. There are 24 GPIOs, GND,
and VDD lines available, as shown in Figure 8 below:
Figure 8. Jumper J2
●J3: This is the standard 20-pin JTAG header available on the board. This can be used
by the user to run the board in debug mode using any JTAG based debugger for an
STM32 device.
●SW1: this is the reset switch that can be used to reset the board at any point.

UM0935 Getting started
Doc ID 17398 Rev 3 13/53
2.5 Selection of the interface
The tool has 10-pin and 30-pin interface headers. Both of these headers support various
communication peripherals, as shown in Ta bl e 2 .
These headers and their corresponding pins can be used in various modes and GPIO
configurations.
As shown in Ta b l e 3 , the user can configure the IBU UI tool in 7 modes, 3 of these modes
are on a 10-pin header and 4 on a 30-pin header. For instance, if the user mainly aims at
using an I2C communication interface, there are two available choices:
a) I2C mode of a 10-pin header: along with the communication peripheral I2C, the
user has 6 GPIOs, of which 2 GPIOs can be used as PWM channels and 1 can be
used as an ADC channel
b) I2C mode of 30-pin header: along with the communication peripheral I2C, the user
has 22 GPIOs, of which 4 GPIOs can be used as PWM channels and 4 can be
used as ADC channels
Please refer to Appendix B, Tabl e 5 to understand the possible GPIO modes and
communication interfaces available on each pin in 10-pin headers. Refer also to Appendix
C, Table 6 to understand the possible GPIO modes and communication interfaces available
on each pin in 30-pin headers.
Table 2. Availability of various communication peripherals and GPIOs on 10-pin
and 30-pin interfaces
Interfaces 30-pin interface 10-pin interface
I2C1 1
SPI 1 1
UART(SCI) 2 1
PWM GPIOs 4 2
ADC channels 4 1
Table 3. Number of total GPIOs, PWM GPIOs, and ADC channels in 10-pin and 30-
pin headers in various modes
Header Interfaces modes Total GPIOs PWM GPIOs ADC channels
10-pin header
I2Cmode621
SPI mode 4 2 1
UARTmode421
30-pin header
I2C mode 22 4 4
SPI mode 20 4 4
UART1 mode 20 4 4
UART2 mode 22 4 4

Getting started UM0935
14/53 Doc ID 17398 Rev 3
Based on the above description, the user is able to select which mode is most suited to their
application development.
Please note that any two communication interfaces of 10-pin or 30-pin headers cannot be
used at the same time. For instance, the user cannot use the I2C mode of 10-pin headers
and the I2C mode of 30-pin headers at the same time or use the I2C and SPI mode at the
same time. To switch between the 7 modes available the user needs to select, using DLL,
the interface to be used. As the user switches between the two modes, the settings of the
previous mode are reset. For Instance, if the user is using the I2C mode of a 10-pin header
and switches to the I2C mode of a 30-pin header, the settings of the previous 10-pin header
are reset and all the pins of the 10-pin header go into input pull-up mode.

UM0935 Running the IBU UI tool
Doc ID 17398 Rev 3 15/53
3 Running the IBU UI tool
To run the board, connect it to the PC with the USB mini B-type cable.
As soon as the board is powered using the USB mini-B cable, power LED D2 lights up. If this
LED fails to light up, take the following steps:
1. Check if the USB cable is working properly or not
2. Press the SW1 reset button.
As a result, the board should be enumerated as an IBU universal interface tool and it is
shown as “STM32 based IBU UI Tool”, as shown in Figure 9, in the device manager window.
If this message does not appear, please contact technical support.
Figure 9. Enumeration result
Once this is done, the user can use their own customized GUI to connect to the board.
The user can create their own GUI using the DLLs provided in the package along with the
board. The DLL help file is also available along with the package.

Running the IBU UI tool UM0935
16/53 Doc ID 17398 Rev 3
3.1 Using the I2C interface of the 10-pin header
Select the I2C interface by sending the command from the DLL, as mentioned in the DLL
help file. After this, the board is ready to be used in I2C mode. The section below explains
how the tool and its features behave once selection has been made using the DLLs and it
also explains how the hardware setup is to be done. Figure 10 shows the interpretation of
the 10-pin header when it is configured in I2C mode.
Figure 10. J1 Interpretation for I2C interface
3.1.1 Steps for making the hardware connection
To use any I2C based slave with the IBU UI tool, you need to make the connection for
jumper J1, as shown in Figure 11.
●The SCL (synchronous clock line), SDA (serial data), and GND (ground line) should be
connected to the corresponding lines of the daughter board for I2C communication
●VDD (power supply line) of the two boards should be connected if the daughter board
is to be powered using the IBU UI tool
●The GPIOs of the IBU UI tool and daughter board can be connected or left
unconnected as per user requirements
●As shown in Figure 11 below, the SDA and SCL line of the interface is already pulled up
to 3.3 V through a resistive pull-up of value 4.7 kΩ.
Figure 11. Connection diagram for I2C interface/GPIOs
10-pin

UM0935 Running the IBU UI tool
Doc ID 17398 Rev 3 17/53
3.1.2 GPIO settings
For the GPIO which is to be used along with the I2C interface, it is necessary to make the
proper settings. These GPIOs may be used as control lines, chip select or status line, such
as interrupt line, or to generate a clock signal using the PWM feature available on one pin.
Therefore, you need to make the GPIOs settings accordingly.
To understand the modes that are supported by a particular pin, please refer to Tab l e 6 .
By default, I2C_GPIO1 to I2C_GPIO6 are in input pull-up mode.
Here you can set only the GPIOs mentioned. I2C lines (SDA and SCL) and power lines are
fixed. To perform the settings of a GPIO, use the I2C DLL referring to the DLL help file
available.
Through selection, the GPIO can be set in different modes, as shown in Ta bl e 7 , such as
simple input mode, input with interrupt, and push-pull output mode. Also in the I2C interface,
there is an option in GPIO5 and GPIO6 to use this GPIO as the PWM clock signal and there
is an option in GPIO6 to use it as an ADC channel. Please refer to Ta bl e 7 in Appendix D.
3.1.3 Using GPIOs in PWM mode settings
As mentioned above, GPIO 5 and GPIO 6 can also additionally be set in PWM mode. To do
this, set GPIO5 or GPIO6 in PWM mode and provide the PWM frequency (maximum value
tested is around 10 MHz), and also the duty cycle to generate different kinds of clocks.
The frequency of the PWM clock generated can vary from 10 kHz to 10 MHz. The duty cycle
of the PWM clock can vary from 0 % to 100 %. Logic '0' is obtained with the duty cycle at 0
% and logic '1' is obtained with the duty cycle at 100 %. Please note that the PWM
generated on GPIO5 and GPIO6 shares the same frequency but can have different duty
cycles. Please refer to Figure 34 in Appendix D.
3.1.4 Using GPIOs as ADC mode settings
As mentioned above, GPIO 6 can also additionally be set as analog channel input. For that
set the GPIO 6 in ADC mode and do the analog settings. Analog settings include ADC
sample time selection and ADC resolution. After that, specify the number of samples that
are required. Then Analog input can be provided on this pin and the set of the digital value
can be obtained. If the resolution set is 8 bit, one byte is obtained for every sample of the
ADC conversion. If the resolution set is 12 bit, two bytes are obtained for every sample of
the ADC conversion. ADC sample time selection values can be one of the following:
7.5 cycles, 13.5 cycles, 28.5 cycles, 41.5 cycles, 55.5 cycles, 71.5 cycles, or 239.5 cycles.
3.1.5 I2C read and write operation
Once the I2C settings have been made, it is possible to read the registers of the slave device
and write in the registers of the slave device. After every read and write operation, the user
can obtain information about the status of the communication.
To read/write in the register, select the register address length depending on the slave
device.
The I2C register address length can range from 0 to 4 bytes. Depending on the address
length given, the register address should be provided in hex format. For instance, if the
register address is 3 bytes, its value should be in the form 0x123.

Running the IBU UI tool UM0935
18/53 Doc ID 17398 Rev 3
Then, provide values, to read and write from the slave device, to the tool. Data to be written
should be provided in the hex format. After every read or write operation, the tool provides
the status (e.g. status: communication complete/bus free) so that the status of the I2C
communication taking place between the IBU UI board and the I2C slave daughter board
can be checked. Please note that the number of bytes to be written should be non-zero and
in decimal format.
The status messages are of the following types depending on the communication that has
taken place:
●Communication complete/bus free
●Wrong acknowledge failure/connection errors
●I2C timeout that occurs when the slave device does not respond for a predefined
interval of time
●Other reasons: this occurs when the user tries to perform read/write operations with a
data length equal to zero.
Also, there is a communication status LED D1 available on the board. It lights up whenever
there is any type of communication error of type 2), 3), or 4) above. The LED status is
updated after each read or write operation.
The transfer sequence for one byte of I2C is shown in Figure 12.
Figure 12. Transfer sequence of one byte of I2C
Therefore this interface allows any I2C interface based slave device to be connected and
tested.
3.2 Using the SPI interface of the 10-pin connector
To use the SPI interface, it must be selected by sending the command from the DLL, as
mentioned in the DLL help file. After this, the board is ready to be used in SPI mode. The
section below explains how the tool and its features behave once selection has been made
using the DLLs and it also explains how the hardware setup is to be done. Figure 13 below
shows the interpretation of the 10-pin header when it is configured in SPI mode.

UM0935 Running the IBU UI tool
Doc ID 17398 Rev 3 19/53
Figure 13. J2 interpretation for SPI interface
3.2.1 Steps for making hardware connection
To use any SPI based slave with the IBU UI tool, you need to make the connection for
jumper J1, as shown in Figure 14.
●The SCK (synchronous clock line), MISO (master in slave out), MISO (master out slave
in), NSS (slave select) and GND (ground line) should be connected to the
corresponding lines of the daughter board for SPI communication
●VDD (power supply line) of the two boards should be connected if the daughter board
is to be powered using the IBU UI tool
●The GPIOs of the IBU UI tool and daughter board can be connected or left
unconnected as per user requirements
Figure 14. Connecting diagram for the 10-pin SPI interface/GPIOs
3.2.2 GPIO settings
For the GPIO which is to be used along with the SPI interface, it is necessary to make the
proper settings. These GPIOs may be used as control lines, chip select or status line, such
as interrupt line, or to generate a clock signal using the PWM feature available on one pin.
Therefore, you need to make the GPIOs settings accordingly.
To understand the modes that are supported by a particular pin, please refer to Tab l e 5 .
By default SPI_GPIO1 to SPI_GPIO4 are in input pull-up mode.
Here you can set only the GPIOs mentioned. SPI lines (MISO, MOSI, NSS and SCK) and
power lines are fixed. To make the settings of a GPIO, use the SPI DLL referring to the DLL
help file available.
10-pin

Running the IBU UI tool UM0935
20/53 Doc ID 17398 Rev 3
Through selection, the GPIO can be set in different modes (as shown in Ta b l e 7 ), such as
simple input mode, input with interrupt, and push-pull output mode. Also in the SPI interface,
there is an option in GPIO3 and GPIO4 to use this GPIO as the PWM clock signal. And
there is an option in GPIO4 to use it as the ADC channel.
3.2.3 Using GPIOs as PWM settings
As mentioned above, GPIO 3 and GPIO 4 can also additionally be set in PWM mode. To do
this, set the GPIO3 or GPIO4 in PWM mode and provide the PWM frequency (maximum
value tested is around 10 MHz) and also the duty cycle to generate different kinds of clocks.
The frequency of the PWM clock generated can vary from 10 kHz to 10 MHz.
The duty cycle of the PWM clock can vary from 0 % to 100 %. Logic '0' is obtained with duty
cycle 0 % and logic '1' is obtained with duty cycle 100 %. Please, refer to Figure 34.
3.2.4 Using GPIOs as ADC settings
As mentioned above, GPIO 4 can also additionally be set as an analog channel input. To do
this, set the GPIO 4 in ADC mode and perform the analog settings. Analog settings include
ADC sample time selection and ADC resolution. After that, specify the number of samples
that are required. Analog input can then be provided on this pin and the set of the digital
value can be obtained.
If the resolution set is 8-bit, one byte is obtained for every sample of the ADC conversion.
If the resolution set is 12-bit, two bytes are obtained for every sample of the ADC
conversion. ADC sample time selection values can be one of the following:
7.5 cycles, 13.5 cycles, 28.5 cycles, 41.5 cycles, 55.5 cycles, 71.5 cycles, or 239.5 cycles.
3.2.5 SPI header settings
Once the GPIO settings are done, the daughter board can be connected to the IBU UI
board. Before using the SPI communication, some parameters must first be defined.
These parameters include the selection of CPOL, CPHA and baud rate pre-scalar (by
default, the most significant bit is put first).
As in SPI standard protocol, CPHA and CPOL values can be 0 or 1. SPI baud rate should
be set with values equal to 2, 4, 8, 16, 32, 64, 128, and 256. The SPI base frequency is
36 kHz. Therefore, if the baud rate pre-scalar is set as 4, the SPI runs at a frequency equal
to 9 kHz.
Once the selection is made, it sets the SPI interface and now the system is ready to read or
write the data from the SPI slave device connected to the IBU UI board.
3.2.6 SPI read and write operation
Once the SPI settings have been made, it is possible to read the registers of the slave
device and write in the registers of the slave device. After every read and write operation,
the user can obtain information about the status of the communication.
To read/write in the register, select the register address length depending on the slave
device.
Table of contents
Other ST Recording Equipment manuals
Popular Recording Equipment manuals by other brands

Rockwell Automation
Rockwell Automation AB Quality Allen-Bradley MicroLogix... user manual

Citronic
Citronic DSM2-6mkII manual

Lexicon
Lexicon OMEGA Desktop Recording Studio Bedienungsanleitung

Altinex
Altinex MULTI-TASKER MT103-127 user guide

Yamaha
Yamaha CDR-HD1500 Service manual

Moog
Moog 500Series user manual