Rev. 0.1 10/09 Copyright © 2009 by Silicon Labo ratories CP2400/1-DK
CP2400/1-DK
CP2400 AND CP2401 DEVELOPMENT KIT USERS GUIDE
1. Overview
The LCD Development Kits (CP2400-DK and CP2401-DK) provide all the hardware and software required to
develop and test LCD applications. The CP240x LCD Firmware Library is included to aid in the code development
process and handle the communication between the C8051F9xx MCU and the CP2400/1 LCD controller. The LCD
library can be used to communicate with the LCD controller through the SPI interface (CP2400-DK) or the SMBus
interface (CP2401-DK). Example code using the LCD library is included with both development kits.
The LCD development kit hardware includes a C8051F930 target board, CP2400 or CP2401 LCD Development
Board, USB Debug adapter, and an ac to dc power adapter. The C8051F930 Target Board features the 25 MIPS,
64 kB Flash, over 4 kB RAM, 8051-based C8051F930 MCU. The C8051F930 MCU is part of the low-power family
and can operate with a supply voltage from 0.9 to 3.6 V. The MCU LCD interface provided by the AB board
consists of the CP2400/1 LCD controller and an LCD and is compatible with the C8051F930-DK and C8051F912-
DK. The LCD development kit includes example code which uses either the SPI interface (CP2400-DK) or SMBus
interface (CP2401-DK) on the C8051F930 to control the LCD using the LCD library.
The Silicon Labs’ IDE supports full-speed, non-intrusive MCU debugging and is bundled with an evaluation version
of the Keil C51 Toolchain allowing immediate application code evaluation in C. Projects with up to 4 kB of object
code and unlimited library co de can be developed using the included toolset. Numerou s application code examp les
are included in the development kit and a walkthrough of an LCD example is included in 6. "Example Source
Code‚" on page 11.
Figure 1. C8051F912-TB Target Board and CP2400 LCD Development Board
CP2400/1-DK
2 Rev. 0.1
2. Kit Contents
The CP2400/1 LCD development kit contains the following items:
C8051F930 target board
CP2400 or CP2401 LCD development bo ard
CP240x development kit quick-start guide
Silicon Laboratories IDE and product information CD-ROM. CD content includes the following:
Silicon Laboratories Integrated Development Environme nt (IDE)
Keil 8051 development to ols (macro assembler, linker, evaluation C comp iler)
Source code examples and register definition files
Documentation
CP2400 and CP2401 Development Kit User’s Guide (this document)
AC to DC power adapter
USB Debug Adapter (USB to debug interface)
2 USB cables
2 AAA batteries
Figure 2. C8051F930 Target Board
CP2400/1-DK
Rev. 0.1 3
Figure 3. CP2400 Development Board
3. Software Overview
All software required to develop firmware and communicate with the target microcontroller is included in the CD-
ROM. The CD-ROM also includes other useful software.
Below is the software necessa ry for fir mw ar e deve lop m en t an d co mm u nic at ion with th e target micro con tr olle r :
Silicon Laboratories Integrated Development Environment (IDE)
Keil 8051 development tools (macro assembler, linker, evaluation C compiler)
Other useful software that is provided in the CD-ROM includes the following:
Configuration Wizard 2
Keil µVision drivers
CP210x USB to UART Virtual COM Port (VCP) drivers
3.1. Software Installation
The included CD-ROM contains the Silicon Laboratories Integrated Development Environment (IDE), Keil software
8051 tools and additional documentation. Insert the CD-ROM into your PC’s CD-ROM drive. An installer will
automatically launch, allowing you to install the IDE software or read documentation by clicking buttons on the
Installation Panel. If the installer does not automatically start when you inser t the CD-RO M, run autorun.exe found
in the root directory of the CD-ROM. Refer to the ReleaseNotes.txt file on the CD-ROM for the latest information
regarding known problems and restrictions. After installing the software, see the following sections for information
regarding the software and running one of the demo applications.
3.2. CP210x USB to UART VCP Driver Installation
The C8051F930 Target Board includes a Silicon Laboratories CP2103 USB-to-UART Bridge Controller. Device
drivers for the CP2103 need to be installed before PC software such as HyperTerminal can communicate with the
target board over the USB connection. If the "Install CP210x Drivers" option was selected during installation, this
will launch a driver “unpacker” utility.
CP2400/1-DK
4 Rev. 0.1
1. Follow the steps to copy the driver files to the desired location. The default directory is C:\Silabs\MCU\CP210x.
2. The final window will give an option to install the driver on the target system. Select the “Launch the CP210x
VCP Driver Installer” option if you are ready to install the driver.
3. If selected, the driver inst aller wil l now launch, pr oviding an option to specify the driver installation location. After
pressing the “Install” button, the installer will search your system for copies of previously installed CP210x
Virtual COM Port drivers. It will let you know when your system is up to date. The driver files included in this
installation have been certified by Microsoft.
4. If the “Launch the CP210x VCP Driver Installer” option was not selected in step 3, the installer can be found in
the location specified in step 2, by default C:\Silabs\MCU\CP210x\Windows_2K_XP_S2K3_Vista. At this
location run CP210xVCPInstaller.exe.
5. To complete the installation pro cess, connect the includ ed USB cab le be tween the ho st comp uter and the USB
connector (P3) on the C8051F930 Target Board. Windows will automatically finish the driver installation.
Information windows will pop up from the taskbar to show the installation progress.
6. If needed, the driver files can be uninstalled by selecting “Silicon Laboratories CP210x USB to UART Bridge
(Driver Removal)” option in the “Add or Remove Programs” window.
3.3. Silicon Laboratories IDE
The Silicon Laboratories IDE integrates a source-code editor, a source-level debugger, and an in-system Flash
programmer. See Section 5. "Using the Keil Software 8051 Tools with the Silicon Laboratories IDE‚" on page 10 for
detailed information on ho w to use t he ID E. Th e Keil Eval uation Toolset includes a compiler, linker, and assembler
and easily integrates into the IDE. The use of third-party compilers and assemblers is also supported.
3.3.1. IDE System Requirements
The Silicon Laboratories IDE requirements:
Pentium-class host PC running Microsoft Windows 2000 or newer
One available USB port
64 MB RAM and 40 MB free HD space recommended
3.3.2. 3rd Party Toolset s
The Silicon Laboratories IDE has native support for many 8051 compilers. The full list of natively supported tools is
as follows:
Keil
IAR
Raisonance
Tasking
Hi-Tech
SDCC
The demo applications for the C8051F930 target board are written to work with the Keil and SDCC toolsets.
3.4. Keil Evaluation Toolset
3.4.1. Keil Asse mb le r an d Link er
The Keil demonstration toolset assembler and linker place no restrictions on code size.
3.4.2. Keil Evaluation C51 C Compiler
The evaluation version of the C51 compiler is the same as the full version with the following limitations: (1)
Maximum 4 kB code generation, (2) There is no floating point library included. When installed from the CD-ROM,
the C51 compiler is initially limited to a code size of 2 kB, and programs start at code address 0x0800. Refer to
“AN104: Integrating Keil Tools into the Silicon Labs IDE" for instructions to change the limitation to 4 kB and have
the programs start at code address 0x0000.
CP2400/1-DK
Rev. 0.1 5
3.5. Configuration Wizard 2
The Configuration Wizard 2 is a code generation tool for all of the Silicon Laboratories devices. Code is generated
through the use of dialog boxes for each of the device's peripherals.
Figure 4. Configuration Wizard 2 Utility
The Configuration Wizard utility helps accelerate development by automatically generating initialization source
code to configure and enable the on-chip re sources ne eded by most design pro jects. In just a few step s, the wizard
creates complete startup code for a specific Silicon Laboratories MCU. The program is configurable to provide the
output in C or assembly language. For more information, refer to the Configuration Wizard documentation.
Documentation and software is available on the kit CD and from the downloads webpage: www.silabs.com/
mcudownloads.
CP2400/1-DK
6 Rev. 0.1
3.6. Silicon Labs Battery Life Estimator
The Battery Life Estimator is a system design tool for battery operated devices. It allows the user to select the type
of battery they are using in the system and enter the supply current profile of their application. Using this
information, it performs a simulation and provides an estimated system operating time. The Battery Life Estimator
is shown in Figure 5.
Figure 5. Battery Life Estimator Utility
From Figure 5, the two inputs to the Battery Life Estimator are battery type and discharge profile. The utility
includes battery profiles for common battery types such as AAA, AA, A76 Button Cell, and CR2032 coin cell. The
discharge profile is application-specific and describes the supply current requirements of the system under various
supply voltages and battery configurations. The discharge profile is independent of the selected power source.
Several read-only discharge profiles for common applications are included in the pulldown menu. The user may
also create a new profile for their own applications.
To create a new profile:
1. Select the profile that most closely matches the target application or choose the "Custom Profile".
2. Click Manage
3. Click Duplicate
4. Click Edit
Profiles may be edited with the easy-to-use GUI (shown in Figure 6).
CP2400/1-DK
Rev. 0.1 7
Figure 6. Battery Life Estimator Discharge Profile Editor
The Discharge Profile Editor allows the user to modify the profile name and description. The four text entry boxes
on the left hand side of the form allow the user to specify the amount of time the system spends in each power
mode. On the right hand side, the user may specify the supply current of the system in each power mode.
Since supply current is typically dependen t on supply volt ag e, the discharge pr ofile editor provides two colum ns for
supply current. The V2 and V1 voltages at the top of the two columns specify the voltages at which the current
measurements were taken. The Battery Life Estimator creates a linear approximation based on the input data and
is able to feed the simulation engine with an approximate supply current demand for eve ry input voltage.
The minimum system operating voltage input field allows the system operating time to stop increasing when the
simulated battery voltage drops below a certain threshold. This is primarily to allow operating time estimates for
systems that ca nnot operate down to 1.8 V, which is the voltage of two fully drain ed single-cell batter ies placed in
series.
CP2400/1-DK
8 Rev. 0.1
The wakeup frequency box calculates the period of a single iteration through the four power modes and displays
the system wake up frequency. This is typically the "sample rate" in low power analog sensors.
Once the battery type and discharge profile is specified, the user can click the "Simulate" button to start a new
simulation. The simulation engine calculates the estimated battery life when using one single-cell battery, two
single-cell batteries in se ries, and two single-cell batteries in parallel. Figure 7 shows the simulation output window .
Figure 7. Battery Life Estimator Utility Simulation Results Form
The primary outputs of the Battery Life Estimato r a re an e stimate d system opera ting time a nd a simulated gr aph of
battery voltage vs. time. Additional outputs include estimated battery capacity, average current, self-discharge
current, and the ability to export graph data to a comma delimited text file for plotting in an external graphing
application.
3.7. Keil µVision2 and µVision3 Silicon Laboratories Drivers
As an alternative to the Silicon Laboratories IDE, the µVision debug driver allows the Keil µVision2 and µVision3
IDEs to communicate with Silicon Laboratories’ on-chip debug logic. In-system Flash memory programming
integrated into the driver allows for rapid updating of target code. The µVision2 and µVision3 IDEs can be used to
start and stop program execution, set breakpoints, check variables, inspect and modify memory contents, and
single-step through programs running on the actual target hardware. For more information, refer to the µVision
driver documentation. The documentation and software are available on the kit CD and from the downloads
webpage: www.silabs.com/mcudownloads.
CP2400/1-DK
Rev. 0.1 9
4. Hardware Setup using a USB Debug Adapter
The target board is connected to a PC running the Silicon Laboratories IDE via the USB Debug Adapter as shown
in Figure 9.
1. Connect the LCD development board to the F930 target board as shown in Figure 8.
2. Connect the USB Debug Adapter to the DEBUG connector on the C8051F930 target board with the 10-pin
ribbon cable.
3. Connect one end of the USB cable to the USB connector on the USB Debug Adapter.
4. Connect the other end of the USB cable to a USB Port on the PC.
5. Verify that a shorting block is installed on J17 and tha t SW5 is in the ON position on the C8051F930 target
board.
6. Verify that a shorting block is installed on J2 of the CP2400/1 LCD Development Board.
7. Connect the ac/dc power adapter to power jack P1 on the C8051F930 t arget board (Optional).
Notes:
Use the Reset button in the IDE to reset the target when connected using a USB Debug Adapter.
Remove power from the target board and the USB Debug Adapter before connecting or disconnecting the
ribbon cable from the target board. Connecting or disconnecting the cable when the devices have power can
damage the device and/or the USB Debug Adapter.
Figure 8. CP2400/1 LCD Development Board Attachment
Figure 9. Hardware Setup Using a USB Debug Adapter
P1
CP2400U1
J5
J1
D2D1
J2
IMEASURE
J5J4
LED PWR
SILICON LABS
www.silabs.com
CP2400-GQ LCD
DEVELOPMEN T BO ARD
P0.2 P0.3
J3
J4
J2
`
P3
CP
2103
U3
P2
DEBUG
J9
RESET
J17
IMEASURE
H2
SILICON LABS
www.silabs.com
H1
J6
J5
J7 J13
F930
U1
J14
J11
J10
VBAT
WALL_PWR
AAA_BAT
COIN_CELL
J15
J16
R15
J12J8
J1
P1.6
P1.5
+1VD
+3VD
VBAT
VDD/DC+
USB POWER
POWER OFF BEFORE
SW4
SWITCHING MODE
2 CELL 1 CELL
TOUCH SENSE SWITCH
P2.1
TOUCH SENSE SWITCH
P2.0
ON
OFF
SW5
PC
USB
Cable
AC/DC
Adapter
Target Board
P0.2 P0.3
J3
J4
J2
`
P3
CP
2103
U3
P2
DEBUG
J9
USB POWER
RESET
P1.6
P1.5
POWER OFF BEFORE
SW4
SWITCHING MODE
2 CELL 1 CELL
J17
IMEASURE
H2
SILICON LABS
www.silabs.com
H1
J6 VDD/DC+
J5
J7 J13
F930
U1
J14
J11
J10
VBAT
WALL_PWR
AAA_BAT
COIN_CELL
TOUCH SENSE SWITCH
P2.0 TOUCH SENSE SWITCH
P2.1
J15
J16
R15
J12J8
+3VD
+1VD
VBAT
J1
SW5
ON
OFF
Silicon Laboratories
USB DEBUG ADAPTER
Run
Stop Power
USB Debug
Adapter
P1
CP2400U1
J5
J1
D2D1
J2
IMEASURE
J5J4
LED PWR
SILICON LABS
www.silabs.com
CP2400-GQ LCD
DEVELO PMENT BOA R D
LCD Development Board
CP2400/1-DK
10 Rev. 0.1
5. Using the Keil Software 8051 Tools with the Silicon Laboratories IDE
To perform source-level debugging with the IDE, configure the Keil 8051 tools to generate a n absolute object file in
the OMF-51 format with object extensions and debug records enabled. Build the OMF-51 absolute object file by
calling the Keil 8051 tools at the command line (e.g., batch file or make file) or by using the project manager built
into the IDE. The default configuration when using the Silicon Laboratories IDE project manager enables object
extension and debug re cord gen eration.
Refer to
"AN104: Integrating Keil 8051 Tools into the Silicon Labs IDE"
in
the “Silabs\MCU\Documentation\ApplicationNotes” directory on the CD-ROM for additional information on using the
Keil 8051 tools with the Silicon Laboratories IDE.
To build an absolute object file using the Silicon Laboratories IDE projec t manager, you must first create a project.
A project consists of a set of files, IDE configuration, debug views, and a target build configuration (list of files and
tool configurations used as input to the assembler, compiler, and linker when building an output object file).
The following sections illustrate the steps necessary to manually create a project with one or more source files,
build a program, and download it to the target in preparation for debugging. (The IDE will automatically create a
single-file project using the currently open and active source file if you select Build/Make Project before a project is
defined.)
5.1. Creating a New Project
1. Select ProjectNew Project to open a new project and re set all configuration settings to default.
2. Select FileNew File to open an editor window. Create your source file(s) and save the file(s) with a
recognized extension, such as .c, .h, or .asm, to enable color syntax highlighting.
3. Right-click on “New Pro je ct” in the Pro jec t W ind ow. Select Add files to project. Select files in the file browser
and click Open. Continue adding files until all project files have been added.
4. For each of the files in the Project Window that you want assembled, compiled and linked into the target build,
right-click on the file name and select Add file to build. Each file will be assembled or compiled as appropriate
(based on file extension) and linked into the build of the absolute obje ct file.
5. If a project contains a large number of files, the “Group” feature of the IDE can be used to organize. Right-click
on “New Project” in the Project Window. Select Add Groups to project. Add pre-defined groups or add
customized groups. Right-click on the group name and choose Add file to group. Select files to be added.
Continue adding files until all project files have been added.
5.2. Building and Downloading the Program for Debugging
1. Once all sour ce files ha ve been a dded to the t arget bu ild, build the pr oject by clicking on the Build/Make Proj ect
button in the toolbar or selecting ProjectBuild/Make Project from the menu.
Note: After the project ha s been built the first time, the Build/Make Project command will only build the files that
have been changed since the previous build. To rebuild all files and project dependencies, click on the Rebuild
All button in the toolbar or select ProjectRebuild All from the menu.
2. Before connecting to the target device, several connection options may need to be set. Open the Connection
Options window by selecting OptionsConnection Options... in the IDE menu. First, select the appropriate
adapter in the “Serial Adapter” section. Next, the correct “Debug Interface” must be selected. C8051F93x-
C8051F92x family devices use the Silicon Labs 2-wire (C2) debug interface. Once all the selections are made,
click the OK button to close the window.
3. Click the Connect button in the toolbar or select DebugConnect from the menu to connect to the device.
4. Download the project to the target by clicking the Download Code button in the toolbar.
Note: To enable automatic downloading if the program build is successful select Enable automatic connect/
download after build in the ProjectTarget Build Configuration dialog. If errors occur during the build process,
the IDE will not attempt the download.
5. Save the project when fin ished with the debug session to preserve the current target build configuration, ed itor
settings and the location of all open debug views. To save the project, select ProjectSave Project As... from
the menu. Create a new name for the project and click on Save.
CP2400/1-DK
Rev. 0.1 11
6. Example Source Code
Example source code and register definition files are provided in the “SiLabs\MCU\Examples\C8051F93x_92x\
default directory during IDE installation. These files may be used as a template for code development. Example
applications include a blinking LED example which configures the green LED on the target board to blink at a fixed
rate.
6.1. Register Definition Files
Register definition files C8051F930.inc and C8051F930_defs.h define all SFR registers and bit-addressable
control/status bits. A macro definition header file compiler_defs.h is al so include d, and is r equire d to be able to use
the C8051F930_defs.h header file with various tool chains. These files are installed into the
Silabs\MCU\Examples\C8051F93x_92x\Header_Files\” directory during IDE installation by default. The register
and bit names are identical to those used in the C8051F93x-C8051F92x data sheet. These register definition files
are also installed in the default search path used by the Keil Software 8051 tools. Therefore, when using the Keil
8051 tools included with the develop ment kit (A51 , C51), it is not ne cessary to copy a r egister d efinition file to ea ch
project’s file directory.
6.2. Blinking LED Example
The example source files F93x_Blinky.asm and F93x_Blinky.c installed in the default directory
Silabs\MCU\Examples\C8051F93x_92x\Blinky” show examples of several basic C8051F930 functions. These
include disabling the watchdog timer (WDT), configuring the Port I/O crossbar, configuring a timer for an interrupt
routine, initializing the system clock, and configuring a GPIO port pin. When compiled/assembled and linked this
program flashes the green LED on the C8051F930 Target Board about five times a second using the interrupt
handler with a C8051F930 timer.
6.3. Touch Sensitive Switch Example
The example source file F93x_CapTouchSense_Switch.c demonstrates the configuration and usage of the touch
sensitive (contactless) switches located on P2.0 and P2.1. Refer to the source file for step-by-step instructions to
build and test this example. This is installed in the following directory by default:
Silabs\MCU\Examples\C8051F93x_92x\ CapTouchSense_Switch
6.4. LCD Examples
The example source files in the project CP240x_LCD_Example show how to initialize the C8051F9xx as well as
the CP2400/1 . The project uses the LCD lib rary to configure the CP2400/1 through the SPI interface (CP2400) or
SMBus interface (CP2401). This project contains many examples that can be selected and customized through
modifications to header files. This is installed in the following director y by default:
Silabs\MCU\Examples\CP240x\CP240x_LCD_Example\Source
6.4.1. Target Board Selection
The target board that is connected to the CP2400/1 LCD Development Board must be specified in the file
lcd_lib_portdefs.h. The section labeled “Development Board Definition” has a global definition that specifies which
target board is connected to the CP2400/1 LCD development board. It is important to note that the target board
specified in this section must match the target board that is connected to the CP2400/1 LCD development board.
The following line of code would configure the code to use the C8051F930 t arget board:
#define DEV_BOARD F930DK
6.4.2. Control Interface Selection
The control interface that is used to configure the CP2400/1 can be selected by modifying the file,
lcd_lib_portdefs.h. In this file, there is a section called “Interface Definition” where either the SPI interface
(CP2400) or the SMBus interface ( CP2401) can be se lected. It is important to note that the correct control interface
must be selected in this particular header file before compiling the project or the CP2400/1 will not function
correctly. The CP2400 uses the SPI interface, and the CP2401 uses the SMBus interface. The following line of
code would configure the code to use the SMBus interface to configure a CP2401:
#define BUS_INTERFACE SMBUS
CP2400/1-DK
12 Rev. 0.1
If using a CP2400, this line should say:
#define BUS_INTERFACE SPI
6.4.3. Example Selection
The example that is run on the CP2400/1 LCD development board can be selected in the file, app_config.h. The
available examples include a voltage display example, digit display example, and several current measurement
examples. A list of available exam ples is included in the file, app_ config.h. Th e following line of code would sele ct
the digit display example:
#define EXAMPLE DISPLAY_DIGITS
The display digits example will first show the numbers “01234567”, clear the LCD, and then show “76543210”. For
the voltage display example, the channel being measured can be selected by modifying the CHANNEL_SELECT
definition in app_config.h. The available selections are VDD and the potentiometer (POT). To measure VDD,
change the corresponding EXAMPLE definition in app_config.h. The VDD voltage will now be displayed on the
LCD. To measure the potentiometer voltage, change the corresponding EXAMPLE definition in app_config.h, and
place shorting blocks on J16 and J15[2-3] on the C8501F930 Target Board. The potentiometer voltage will now be
displayed on the LCD.
The various current measurement examples can also be selected in app_config.h. These examples place the
CP240x in various power modes. The file, lcd_lib_config.h, has parameters that can be modified that will affect the
current draw, such as the LCD refresh rate, the mux mode, and the bias mode.
CP2400/1-DK
Rev. 0.1 13
7. C8051F930 Target Board
The CP2400/1 Development Kit includes a target board with a C8051F930 device pre-installed for evaluation and
preliminary software development. Numerous input/output (I/O) connections are provided to facilitate prototyping
using the target board. Refer to Figure 10 for the locations of the various I/O connectors. Figure 12 on page 15
shows the factory default shorting block positions.
P1 Expansion connector (96- pin )
P2 Power connecto r (accepts input from 7 to 15 VDC unregulated power adapter)
P3 USB connector (connect s to PC for serial communication)
J1 Enable/Disable VBAT Power LED
J2, J3, J4 Port I/O headers (provide access to Port I/O pins)
J5 Enable/Disable VDD/DC+ Power LED
J6 Provides an easily accessible ground clip
J7 Connects pin P0.7 (IREF0 Output) to resistor R14 and capacitor C19
J8 Connects P0.2 and P0.3 to switches and P1.5 and P1.6 to LEDs
J9 DEBUG connector for Debug Adapter interface
J10, J11 Selects the power supply source (Wall Power, AAA Battery, or Coin Cell)
J12 Connects Port I/O to UART0 interface
J13 Connects external VREF capacitor to the P0.0/VREF
J14 Connects the PCB ground plane to P0.1/AGND
J15 Connects negative potentiometer (R14) terminal to pin P1.4 or to GND
J16 Connects the potentiometer (R14) wiper to P0.6/CNVSTR
J17 Creates an open in the power supply path to allow supply current measurement
H1 Analog I/O terminal block
H2 Provides terminal block access to the input and output nodes of J17
SW4 Switches the device between One-Cell (0.9–1.8 V supply) or Two-Cell (1.8–3.6 V) mode
SW5 Turns power to the MCU on or off
Figure 10. C8051F930 Target Board
P0.2 P0.3
Pin 1
Pin 2
J3
J4
J2
`
P3
CP
2103
U3
P2
DEBUG
J9
USB POWER
RESET
P1.6
P1.5
POWER OFF BEFORE
SW4
SWITCHING MO DE
2 CELL 1 CELL
J17
IMEASURE
H2
SILICON LABS
www.silabs.com
H1
Pin 1
J6 VDD/DC+
J5
J7 J13
F930
U1
J14
J11
J10
VBAT
WALL_PWR
AAA_BAT
COIN_CELL
TOUCH SENSE SWITCH
P2.0 TOUCH SENSE SWITCH
P2.1
P1.4
J15
GND
J16
R15
J12J8
+3VD
+1VD
VBAT
J1
SW5
ON
OFF
P1
SW2 SW3
PORT2
PORT1 SW1
PORT0
CP2400/1-DK
14 Rev. 0.1
The following items are located on the bottom side of the board. See Figure 11.
BT1 Battery Holder for 1.5 V AAA. Use for one-cell or two-cell mode.
BT2 Battery Holder for 1.5 V AAA. Use for two-cell mode only.
BT3 Battery Holder for 3 V Coin Cell (CR2032).
BT4 Battery Holder for 1.5 V Button Cell (A76 or 357).
Figure 11. Bottom of C8051F930 Target Board
NEG
POS NEG
POS
BT4
BT2 BT1
BT3
(CR2032)
(A76 or 357)
(AAA)(AAA)
Note: BT2 is
only used in
two-cell mode.
CP2400/1-DK
Rev. 0.1 15
7.1. Target Board Shorting Blocks: Factory Defaults
The C8051F930 t arget board comes from the factory with pr e-installe d shorting blocks on many headers. Figure 12
shows the positions of the factory default shorting blocks.
Figure 12. C8051F930 Target Board Shorting Blocks: Factory Defaults
P0.2 P0.3
Pin 1
Pin 2
J3
J4
J2
`
P3
CP
2103
U3
P2
DEBUG
J9
USB POWER
RESET
P1.6
P1.5
POWER OFF BEFORE
SW4
SWITCHING MODE
2 CELL 1 CELL
J17
IMEASURE
H2
SILICON LABS
www.silabs.com
H1
Pin 1
J6 VDD/DC+
J5
J7 J13
F930
U1
J14
J11
J10
VBAT
WALL_PWR
AAA_BAT
COIN_CELL
TOUCH SENSE SWITCH
P2.0 TOUCH SENSE SWITCH
P2.1
P1.4
J15
GND
J16
R15
J12J8
+3VD
+1VD
VBAT
J1
SW5
ON
OFF
P1
SW2 SW3
PORT2
PORT1 SW1
PORT0
CP2400/1-DK
16 Rev. 0.1
7.2. Target Board Power Options and Current Measurement
The C8051F930 Target Board supports three power options, selectable by the three-way header (J10/J11). The
power options vary based on the configuration (one-cell or two-cell mode) selected by SW4. Power to the MCU
may be switched on/off using the power switch (SW5). Important Note: The power swit ch (SW5) mu st be in the
OFF position prior to switching between one-cell and two-cell mode using SW4. The power options are
described in the paragraphs below.
7.2.1. Wall Power
When the J10/J11 three-way header is set to WALL_PWR, the C8051F930 Target Board may be po wered fr om the
following power sources:
9 VDC power using the ac to dc power adapter (P2)
5 VDC USB VBUS power from PC via the USB Debug Adapter (J9)
5 VDC USB VBUS power from PC via the CP2103 USB connector (P3)
All the three power sources are ORed together using reverse-biased diodes (D1, D2, D3), eliminating the need for
headers to choose between the sources. The target board will operate as long as any one of the power sources is
present. The ORed power is regulated to a 3.3 V dc volt age using a LDO regulator (U2) . The output of the regulator
powers the +3 VD net on the target board.
If SW4 is configu red to selec t tw o-cell m ode, the V BAT supply net on the target boa rd is powere d dir ectly f rom the
+3 VD net. If SW4 is configured to select one-cell mode, the VBAT supply net is powered directly from the +1 VD.
This power supply net takes +3 VD and passes it through a 1.65 V LDO. The LDO’s output voltage is variable and
can be set by changing the value of resistor R32.
7.2.2. AAA Battery
When the J10/J11 three-way header is set to AAA_BAT, the C8051F930 Target Board may be powered from a
single AAA battery inserted in BT1 or from the series combination of the AAA batteries inserted in BT1 and BT2. A
single battery is selected when SW4 is configured to one-cell mode. The two AAA batteries configured in series to
provide a voltage of ~3 V are selected when SW4 is configured to two-cell mode.
7.2.3. Coin Cell Battery
When the J10/J11 three-way header is set to COIN_CELL, the C8051F930 Target Board may be powered from a
single 1.5 V Alkaline (A76) or Silver Oxide (357) button cell inserted in BT4 or from a single 3 V Lithium (CR2032)
coin cell inserted in BT3. The button cell (BT4) is selected when SW4 is configured to one-ce ll mode, and t he coin
cell (BT3) is selected when SW4 is configured to two-cell mode.
J11
J10
VBAT
WALL_PWR
AAA_BAT
COIN_CELL
J11
J10
VBAT
WALL_PWR
AAA_BAT
COIN_CELL
J11
J10
VBAT
WALL_PWR
AAA_BAT
COIN_CELL
CP2400/1-DK
Rev. 0.1 17
7.2.4. Measuring Current
The header (J17) and te rminal block (H2) provide a way to measure the tot al supply curren t flowing from the power
supply source to the MCU. The measured current does not include any current from the VBAT LED (DS2), the
address latch (U4) or the quiescent current from the power supply; however, it does include the current used by
any LEDs powered from the VDD/DC+ supply net or so urce d through a GPIO pi n. See the t arget boar d schematics
in Figures 19 through 21 for additional information.
7.3. System Clock Sources
7.3.1. Internal Oscillators
The C8051F930 device installed on the target board features a factory calibrated programmable high-frequency
internal oscillator (24.5 MHz base frequency, ±2%) and a low power internal oscillator (20 MHz ±10%). After each
reset, the low power oscillator divided by 8 results in a default system clock frequency of 2.5 MHz (±10%). The
selected system clock and the system clock divider may be configured by software for operation at other
frequencies. For low-frequency operation, the C8051F930 features a smaRTClock real time clock. A 32.768 kHz
Watch crystal (Y2) is included on the target board. If you wish to operate the C8051F930 device at a frequency not
available with the internal oscillators, an external crystal may be used. Refer to the C8051F93x-C8051F92x data
sheet for more information on configuring the system clock source.
7.3.2. External Oscillator Options
The target board is designed to facilitate the installation of an external crystal (Y1). Install a 10 M resistor at R9
and install capacitors at C20 and C21 using values appropriate for the crystal you select. If you wish to operate the
external oscillator in capacitor or RC mode, options to install a capacitor or an RC network are also available on the
target board. Populate C21 for capacitor mode, and populate R16 and C21 for RC mode. Refer to the C8051F93x-
C8051F92x data sheet for more information on the use of external oscillators.
7.4. Port I/O Headers (J2, J3, J4, J6)
Access to all Port I/O on the C8051F930 is provided through the headers J2, J3, and J4. The header J6 provides
access to the ground plane for easy clipping of oscilloscope probes.
7.5. Switches and LEDs
Three push-button switches are provided on the target board. Switch SW1 is connected to the reset pin of the
C8051F930. Pressing SW1 put s the device into it s hard ware-reset st ate. Switch es SW2 and SW3 are connected to
the C8051F930’s general purpose I/O (GPIO) pins through headers. Pressing SW2 or SW3 generates a logic low
signal on the port pin. Remove the shorting block from the header (J8) to disconnect the switches from the port
pins. The por t pin signal is also routed to pins on the J2 and P1 I/O connectors. See Table 1 for the port pins and
headers corresp onding to each switch.
Two touch sensitive (contactless) switches are provided on the target board. The operation of these switches
require appropriate firmware running on the C8051F930 MCU that can sense the state of the switch. See Section
6.3. "Touch Sensitive Switch Example‚" on page 11 for details about example source code.
Five power LEDs are provided on th e t arge t board to serve as ind icators. Each o f the two re gulators h as a red LED
used to indicate the presence of power at the output of the regulator. A red USB Power LED turns on when a USB
cable is plugged into the USB connector P3. One power LED is also added to each of the two primary supply nets
powering the MCU (VDD/DC+ and VBAT). The LEDs connected to the supply nets may be disabled by removing
the shorting blocks from J1 and J5.
Two LEDs are conn ecte d to GPIO pi ns P1 .5 an d P1 .6 for use by application software. See Table 1 for the port pins
and headers corresponding to each LED.
A potentiometer (R15 ) is also provided on th e t arget boa rd for g ene ratin g ana log signa ls. Place a sh orting b lock on
J16 to connect the wiper to P0.6/CNVSTR. The header J15 allows the negative terminal of the potentiometer to be
tied to GND or to P1.4. When tied to GND, the potentiometer is always enabled and will draw a measurable
amount of supply current. When tied to P1.4, it only draws current when P1.4 is driving a logic 0 and draws no
current when P1.4 is driving a logic 1.
CP2400/1-DK
18 Rev. 0.1
7.6. Expansion I/O Connector (P1)
The 96-pin Exp ansion I/O connector P1 pro vides access to a ll sig nal pins of the C8051 F930 de vice (excep t the C2
debug interface signals). In addition, power supply and ground pins are included. A small through-hole prototyping
area is also provided. See Table 2 for a list of pin descriptions for P1.
Table 1. Target Board I/O Descriptions
Description I/O Header(s)
SW1 Reset none
SW2 P0.2 J8[5–6]
SW3 P0.3 J8[7–8]
P2.0 (Touch Sense Switch) P2.0 none
P2.1 (Touch Sense Switch) P2.1 none
Red LED (P1.5) P1.5 J8[1–2]
Yellow LED (P1.6) P1.6 J8[3–4]
Red LED (VDD/DC+) VDD/DC+ Supply Net J5
Red LED (VBAT) VBAT Supply Net J1
Red LED (USB Power) USB VBUS none
Red LED (+1 VD Power) +1 VD Regulator Output none
Red LED (+3 VD Power) +3 VD Regulator Output none
Potentiometer (R15) P0.6/P1.4 J15, J16
Table 2. P1 Pin Descriptions
Row A
Pin # Description Row B
Pin # Description Row C
Pin # Description
1+3VD 1GND 1 nc
2nc 2nc 2nc
3nc 3nc 3nc
4nc 4nc 4nc
5nc 5nc 5nc
6nc 6nc 6nc
7nc 7nc 7nc
8nc 8nc 8nc
9nc 9nc 9nc
10 nc 10 P0.7/IREF0 10 P0.6/CNVSTR
11 P0.5/RX 11 P0.4/TX 11 P0.3H
12 P0.2H 12 P0.1/AGND 12 P0.0/VREF
13 P1.7/AD7 13 P1.6/AD6 13 P1.5/AD5
14 P1.4/AD4 14 P1.3/AD3 14 P1.2/AD2
15 P1.1/AD1 15 P1.0/AD0 15 A7-Latch
16 A6-Latch 16 A5-Latch 16 A4-Latch
17 A3-Latch 17 A2-Latch 17 A1-Latch
18 A0-Latch 18 P2.3/A11 18 nc
CP2400/1-DK
Rev. 0.1 19
7.7. Target Board DEBUG Interface (J9)
The
DEBUG
connector J9 provides access to the
DEBUG
(C2) pins of the C8051F930. It is used to connect the
Serial Adapter or the USB Debug Adapter to the target board for in-circuit debugging and Flash programming.
Table 3 shows the
DEBUG
pin definitions.
7.8. Serial Interface (J12)
A USB-to-UART bridge circuit (U3) and USB connector (P3) are provided on the target board to facilitate serial
connections to UART0 of the C8051F930. The Silicon Labs CP2103 (U3) USB-to-UART bridge provides data
connectivity between the C8051F930 and the PC via a USB port. The VIO power supply and TX, RX, RTS and
CTS signals of UART0 may be connected to the CP2103 by installing shorting blocks on header J12. The shorting
block positions for connecting each of these signals to the CP2103 are listed in Table 4. To use this interface, the
USB-to-UART device drivers should be installed as described in Section 3.2. "CP210x USB to UART VCP Driver
Installation‚" on page 3.
19 nc 19 nc 19 P2.3/A11
20 P2.2/A10 20 P2.1/A9 20 P2.0/A8
21 /WR 21 /RD 21 P0.2H
22 P2.3/A11 22 P2.2/A10 22 P2.1/A9
23 P2.0/A8 23 ALE 23 nc
24 nc 24 nc 24 nc
25 nc 25 GND 25 nc
26 GND 26 nc 26 nc
27 nc 27 nc 27 nc
28 nc 28 VDD/DC+ 28 VBAT
29 nc 29 nc 29 nc
30 nc 30 nc 30 nc
31 nc 31 nc 31 nc
32 nc 32 GND 32 nc
Table 3. DEBUG Connector Pin Descriptions
Pin # Description
1 +3VD (+3.3VDC)
2, 3, 9 GND (Ground)
4 P2.7/C2D
5RST
(Reset)
6P2.7
7RST
/C2CK
8 Not Connected
10 USB Power (+5 VDC from J9)
Table 2. P1 Pin Descriptions (Continued)
Row A
Pin # Description Row B
Pin # Description Row C
Pin # Description
CP2400/1-DK
20 Rev. 0.1
7.9. Analog I/O (H1)
Several of the C805 1F9 30 target device’s port pin s ar e con nected to the H1 terminal block. Refer to Table 5 for the
H1 terminal block connections.
7.10. IREF Connector (J7)
The C8051F930 Target Board also features a current-to-voltage 1 k load resistor that may be connected to the
current reference (IREF0) output that can be enabled on port pin (P0.7). Install a shorting block on J7 to connect
port pin P0.7 of the target device to the load resistor. If enabled by so ftware, th e IREF0 signal is th en r o ut ed t o th e
J2[8] and H1[2] connector s.
7.11. VREF and AGND Connector (J13, J14)
The C8051F930 Target Board also features 4.7 µF capacitor in parallel with a 0.1 µF that can be connected to
P0.0/VREF when using the Precision Voltage Reference. The capacitors are connected to P0.0/VREF when a
shorting block is installed on J13. Using the Precision Voltage Reference is optional since 'F93x-'F92x devices
have an on-chip High-Speed Voltage Reference.
The shorting block J14 allows P0.1/AGND to be connected to ground. This provides a noise-free ground reference
to the analog-to-digital Converter. The use of this dedicated analog ground is optional.
7.12. C2 Pin Sharing
On the C8051F930, the debug pins C2CK and C2D are shared with the pins RST and P2.7, respectively. The
target board includes the resistors necessary to enable pin sharing which allow the RST and P2.7 pins to be used
normally while simulta neously debuggin g the device. See Application Note “AN12 4: Pin Sharing Techniques for the
C2 Interface” at www.silabs.com for more information rega rding pin sharing.
Table 4. Serial Interface Header (J12) Description
Header Pins UART0 Pin Description
J12[9–10] CP2103_VIO (VDD/DC+)
J12[7–8] TX_MCU (P0.5)
J12[5–6] RX_MCU (P0.4)
J12[3–4] RTS (P0.6)
J12[1–2] CTS (P0.7)
Table 5. H1 Terminal Block Pin Descriptions
Pin # Description
1 P0.6/CNVSTR
2P0.7/IREF0
3 GND (Ground)
4 P0.0/VREF (Voltage Reference)
CP2400/1-DK
Rev. 0.1 21
8. CP2400/1 AB LCD Development Board
The CP2400 and CP2401 Development Kits include a CP2400 or CP2401 LCD Development Board designed to
connect to C8051F9xx target boards. Various input/output (I/O) connectors are provided to facilitate prototyping
using the development bo ar d. Refer to Figu re 13 for the locations of the various I/O connectors. Figure 14 on page
22 shows the factory default shorting block positions.
P1 Expansion connector (96- pin )
DS1 Liquid Crystal Display (LCD)
U1 CP2400/1 LCD Controller
J1 CP2400/1 Port I/O headers (provide acce ss to Port I/O pins on CP2400/1)
J2 Creates an open in the power supply path to allow supply current measurement
J3 Provides an easily accessible ground clip
J4 Connects the LED signal from the C8051F9xx Target Board to the LED on the CP2 400/1
Development Board
J5 Enable/Disable CP2400/1 Power LED
D1 LED controlled by C8051F9xx Target Board
D2 CP2400/1 Power LED
Figure 13. CP2400 AB LCD Development Board
P1
CP2400U1
J5
J1
D2D1
J2
IMEASURE
J5J4
LED PWR
SILICON LABS
www.silabs.com
CP2400-GQ LCD
DEVELOPMENT BOARD
CP2400/1-DK
22 Rev. 0.1
8.1. Target Board Shorting Blocks: Factory Defaults
The CP2400/1 target board comes from the factory with pre-installed shorting blocks on many headers. Figure 14
shows the positions of the factory default shorting blocks.
Figure 14. CP2400 AB LCD Development Board Shorting Blocks: Factory Defaults
P1
CP2400U1
J5
J1
D2D1
J2
IMEASURE
J5J4
LED PWR
SILICON LABS
www.silabs.com
CP2400-GQ LCD
DEVELOPMENT BOARD
CP2400/1-DK
Rev. 0.1 23
8.2. AB Board Current Measurement
The header (J2) provides a way to measure the total supply current flowing from the power supply source to the
CP2400/1. The measured current does not include any current from the LED (D1) or the Power LED (D2). See the
target board schematics in Figures 15 through 18 for additional information.
8.3. Port I/O Headers (J1, J3)
Access to the CP2400/1 control interface signals (SMBus or SPI) as well as /RST, /LED, /INT, /CLK, VDD, and
GND is provided through J1 on the AB boar d. The heade r J3 provid es access to the gro und plane for easy clipping
of oscilloscope probes.
8.4. LEDs
Two LEDs are provided on the AB b oard: one labeled “LED” and one labele d “PWR” . The PWR LED is p owered by
VDD being supplied to the CP2400/1. The other LED labeled “LED” is powered through from P1.7 on the
C8051F930 Target Board or P2.7 on the C8051F912 Target Board. Tables 6 and 7 contain more information
regarding which port pins’ control signals are connected to on the target board. Headers are provided on the AB
board to allow for the LEDs to be physically disconnected from the circuit. Placing a jumper on the header J4 will
connect the PWR LED to ground, which will allow it to turn on when a voltage is applied on the CP2400/1’s VDD
pin. Placing a jumper on the header J5 will connect LED labeled LED to the LED signal on the attached Target
Board. Tables 6 and 7 list information on which port pin on the attached Target Board is connected to the LED
signal. The CP2400 LCD Development Board schematic and the CP2401 LCD Development Board schematic
have more information about the LED and control signals.
8.5. Target Board Connections
Tables 6 and 7 list details regarding the port pin connections to the control signals on the CP2400/1.
Table 6. CP2400 Control Signals
Signal F930 TB F912 TB
SCK P1.0 P1.0
MISO P1.1 P1.1
MOSI P1.2 P1.2
NSS P1.3 P1.3
/INT P0.1 P0.1
/RST P0.0 P0.0
/CLK P1.4 P1.4
/LED P1.7 P2.7
Table 7. CP2401 Control Signals
Signal F930 TB F912 TB
SDA P1.0 P1.0
SCL P1.1 P1.1
/PWR P1.3 P1.3
/INT P0.1 P0.1
/RST P0.0 P0.0
/CLK P1.4 P1.4
/LED P1.7 P2.7
CP2400/1-DK
24 Rev. 0.1
8.6. Expansion I/O Connector (P1)
The 96-pin Expansion I/O connector P1 provides access to all signal pins of the CP2400/1 device. In addition,
power supply and ground pins are included. A small through-hole prototyping area is also provided. See Table 8
for a list of pin descriptions for P1.
Table 8. P1 Pin Descriptions
Row A
Pin # Description Row B
Pin # Description Row C
Pin # Description
1+3VD 1GND 1 nc
2nc 2nc 2nc
3nc 3nc 3nc
4nc 4nc 4nc
5nc 5nc 5nc
6nc 6nc 6nc
7nc 7nc 7nc
8nc 8nc 8nc
9nc 9nc 9nc
10 nc 10 nc 10 nc
11 nc 11 nc 11 nc
12 nc 12 /INT_H 12 /RST_H
13 /LED_H 13 nc 13 nc
14 /CLK_H 14 NSS_H/PWR_H 14 MOSI_H
15 MISO_H/SCL_H 15 SCK_H/SDA_H 15 nc
16 nc 16 nc 16 nc
17 nc 17 nc 17 nc
18 nc 18 nc 18 nc
19 nc 19 nc 19 nc
20 nc 20 nc 20 nc
21 nc 21 nc 21 nc
22 nc 22 nc 22 nc
23 nc 23 nc 23 nc
24 nc 24 nc 24 nc
25 nc 25 GND 25 nc
26 GND 26 nc 26 nc
27 nc 27 nc 27 nc
28 nc 28 +1.8 VD 28 nc
29 nc 29 nc 29 nc
30 nc 30 nc 30 nc
31 nc 31 nc 31 nc
32 nc 32 GND 32 nc
CP2400/1-DK
Rev. 0.1 25
9. Schematics
Figure 15. CP2400 LCD Development Board Schematic (Page 1 of 2)
CP2400/1-DK
26 Rev. 0.1
Figure 16. CP2400 LCD Development Board Schematic (Page 2 of 2)
CP2400/1-DK
Rev. 0.1 27
Figure 17. CP2401 LCD Development Board Schematic (Page 1 of 2)
CP2400/1-DK
28 Rev. 0.1
Figure 18. CP2401 LCD Development Board Schematic (Page 2 of 2)
CP2400/1-DK
Rev. 0.1 29
Figure 19. C8051F930 Target Board Schematic (Page 1 of 3)
CP2400/1-DK
30 Rev. 0.1
Figure 20. C8051F930 Target Board Schematic (Page 2 of 3)
CP2400/1-DK
Rev. 0.1 31
Figure 21. C8051F930 Target Board Schematic (Page 3 of 3)
http://www.silabs.com
Silicon Laboratories Inc.
400 West Cesar Chavez
Austin, TX 78701
USA
Simplicity Studio
One-click access to MCU and
wireless tools, documentation,
software, source code libraries &
more. Available for Windows,
Mac and Linux!
IoT Portfolio
www.silabs.com/IoT SW/HW
www.silabs.com/simplicity Quality
www.silabs.com/quality Support and Community
community.silabs.com
Disclaimer
Silicon Labs intends to provide customers with the latest, accurate, and in-depth documentation of all peripherals and modules available for system and software implementers using or
intending to use the Silicon Labs products. Characterization data, available modules and peripherals, memory sizes and memory addresses refer to each specific device, and "Typical"
parameters provided can and do vary in different applications. Application examples described herein are for illustrative purposes only. Silicon Labs reserves the right to make changes
without further notice and limitation to product information, specifications, and descriptions herein, and does not give warranties as to the accuracy or completeness of the included
information. Silicon Labs shall have no liability for the consequences of use of the information supplied herein. This document does not imply or express copyright licenses granted
hereunder to design or fabricate any integrated circuits. The products are not designed or authorized to be used within any Life Support System without the specific written consent of
Silicon Labs. A "Life Support System" is any product or system intended to support or sustain life and/or health, which, if it fails, can be reasonably expected to result in significant personal
injury or death. Silicon Labs products are not designed or authorized for military applications. Silicon Labs products shall under no circumstances be used in weapons of mass
destruction including (but not limited to) nuclear, biological or chemical weapons, or missiles capable of delivering such weapons.
Trademark Information
Silicon Laboratories Inc.® , Silicon Laboratories®, Silicon Labs®, SiLabs® and the Silicon Labs logo®, Bluegiga®, Bluegiga Logo®, Clockbuilder®, CMEMS®, DSPLL®, EFM®, EFM32®,
EFR, Ember®, Energy Micro, Energy Micro logo and combinations thereof, "the world’s most energy friendly microcontrollers", Ember®, EZLink®, EZRadio®, EZRadioPRO®,
Gecko®, ISOmodem®, Precision32®, ProSLIC®, Simplicity Studio®, SiPHY®, Telegesis, the Telegesis Logo®, USBXpress® and others are trademarks or registered trademarks of Silicon
Labs. ARM, CORTEX, Cortex-M3 and THUMB are trademarks or registered trademarks of ARM Holdings. Keil is a registered trademark of ARM Limited. All other products or brand
names mentioned herein are trademarks of their respective holders.
Mouser Electronics
Authorized Distributor
Click to View Pricing, Inventory, Delivery & Lifecycle Information:
Silicon Laboratories:
C8051F912-TB CP2400AB CP2400DK