Silicon Laboratories C8051F310 User Manual

Page 1
C8051F31X DEVELOPMENT KIT USERS GUIDE
1. Kit Contents
The C8051F31x Development Kit contains the following items:
C8051F310 Target Board
Serial Adapter (RS232 to Target Board Debug Interface Protocol Converter)
Silicon Laboratories IDE and Product Information CD-ROM. CD content includes:
Keil 8051 Development Tools (macro assembler, linker, evaluation ‘C’ compiler)
Installation Utility (SETUP.EXE)
Source code examples and register definition files
Documentation
AC to DC Power Adapter
RS232 Serial Cable
7” Ribbon Cable
Quick-start Guide
C8051F31x Development Kit User’s Guide (this document)
AN179
2. Hardware Setup
The target board is connected to a PC running the Silicon Laboratories IDE via the Serial Adapter as shown in Figure 1.
1. Connect one end of the RS232 serial cable to a Serial (COM) Port on the PC.
2. Connect the other end of the RS232 serial cable to the DB-9 connec tor on the Serial Adapter.
3. Connect the Serial Adapter to the DEBUG connector on the target bo ard with the10-pin ribbon cable.
4.
Connect the AC/DC power adapter to power jack P1 on the target board
AC/DC
Adapter
PC
Serial Port
Serial Cable
Serial
Adapter
Ribbon Cable
Figure 1. Hardware Setup
.
Target Board
Note: The Reset switch on the target board is disabled when the serial adapter is connected to the target board. Use the Reset button in the Silicon Laboratories IDE toolbar to reset the target when connected to the Serial Adapter.
Rev. 0.4 1/04 Copyright © 2004 by Silicon Laboratories AN179
Page 2
AN179
3. Software Setup
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 auto­matically launch, allowing you to install the IDE software or read documentation by clicking buttons on the Installa­tion Panel. If the installer does not automatically start when you insert the CD-ROM, run autorun.exe found in the root directory of the CD-ROM. Refer to the readme.txt file on the CD-ROM for the latest information regarding known IDE problems and restrictions.
4. Silicon Laboratories Integrated Development Environment
The Silicon Laboratories IDE integrates a source-code editor, source-level debugger and in-system Flash program­mer. The use of third-party compilers and assemblers is also supported. This development k it includes the Keil Software A51 macro assembler, BL51 linker and evaluation version C51 ‘C’ compiler. These tools can be used from within the Silicon Laboratories IDE.
4.1. System Requirements
The Silicon Laboratories IDE requirements:
Pentium-class host PC running Microsoft Windows 95 or later, or Microsoft Windows NT or later.
One available COM port.
64 MB RAM and 40 MB free HD space recommended.
4.2. Assembler and Linker
A full-version Keil A51 macro assembler and BL51 banking linker are included with the development kit and are installed during IDE installation. The complete assembler and linker reference manual can be found on-line under the Help menu in the IDE or in the “SiLabs\MCU\hlp” directory (A51.pdf).
4.3. Evaluation C51 ‘C’ Compiler
An evaluation version of the Keil C51 ‘C’ compiler is included with the development kit and is installed during IDE installation. The evaluation version of the C51 compiler is the same as the full professional version except code size is limited to 4K bytes and the floating point library is not included. The C51 compiler reference manual can be found under the Help menu in the IDE or in the “SiLabs\MCU\hlp” directory (C51.pdf).
4.4. Using the Keil Software 8051 Tools with the Silicon Laboratories IDE
To perform source-level debugging with the IDE, you must configure the Keil 8051 tools to generate an absolute object file in the OMF-51 format with object extensions and debug records enabled . You may 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 record generation. Keil 8051 Tools Into the Silicon Labs IDE 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 project manager, you must first create a project. A project consists of a set of files, IDE configur ation, 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).
in the “SiLabs\MCU\Documentation\Appnotes” directory on the CD-
Refer to Applications Note
AN104 -
Integrating
The following sections illustrate the steps necessary to manually create a p roject with one or more source files, build a program and download the program to the t arg et in pre pa ration for d ebugging. (The IDE will auto matically create a single-file project using the currently open and active so u rce fi le i f you select defined.)
2 Rev. 0.4
Build/Make Project
before a project is
Page 3
AN179
4.4.1. Creating a New Project
1. Select Project->New Project to open a new project and reset all configuration settings to default.
2. Select File->New File to open an editor window. Create your source file(s) and save the file(s) with a rec­ognized extension, such as .c, .h, or .asm, to enable color syntax highlighting.
3. Right-click on “New Project” in the Project Window. 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 build, right-click on the file name and select appropriate (based on file extension) and linked into the build of the absolute object file.
Note: 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 groups or add customized groups. Right-click on the group name and choose to be added. Continue adding files until all project files have been added.
Project Window
Project Window
that you want assembled, compiled and linked into the target
Add file to build
. Select
. Each file will be assembled or compiled as
Add Groups to project
Add file to group
. Add pre-defined
. Select files
4.4.2. Building and Downloading the Program for Debugging
1. Once all source files have been added to the target build, build the project by clicking on the Build/Make Project button in the toolbar or selecting Project->Build/Make Project from the menu.
Note: After the project has 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 Project->Rebuild All from the menu.
2.
C8051F31x
Options->Debug Interface
button in the toolbar or select
3. 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 con-
nect/download after build in the Project->Target Build Configuration dialog. If errors occur during the build process, the IDE will not attempt the download.
family devices use the Silicon Labs 2-wire (C2) debug interface. You must select
menu to enable connection to
Debug->Connect
from the menu to connect to the device.
C8051F31x
target devices. Click the
C2
in the
Connect
4. Save the project when finished with the debug session to preserve t he current target build config uration, editor settings and the location of all open debug views. To save the project, select Pr oject->Sav e Project
As... from the menu. Create a new name for the project and click on Save.
Rev. 0.4 3
Page 4
AN179
5. Example Source Code
Example source code and register definition files are provided in the “SiLabs\MCU\Examples\ during IDE installation. T hes e f iles may be u sed as a te mplate 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.
C8051F31x
” directory
5.1. Register Definition Files
Register definition files C8051F310.inc and C8051F310.h define all SFR registers and bit-addressable control/ status bits. They are installed into the “SiLabs\MCU \Examples\C8051F31x” directory during IDE installation. The register and bit names are identical to those used in the C8051F31x data sheet. Both register definition files are also installed in the default search pa th used by the Keil Software 8051 tools. Therefore, when using the Keil 8051 tools included with the development kit (A51, C51), it is not necessary to copy a register definition file to each project’s file directory.
5.2. Blinking LED Example
The example source files blink.asm and blinky.c show examples of several basic C8051F31x 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. When compiled/assembled and linked this pro­gram flashes the green LED on the C8051F310 target board about five times a second using the interrupt handler with a C8051F310 timer.
4 Rev. 0.4
Page 5
AN179
6. Target Board
The
C8051F31x preliminary software development. Numerous input/output (I/O) connections are provided to facilitate prototyping using the target board. Refer to Figure 2 for the locations of the various I/O connectors.
P1 Power connector (accepts input from 7 to 15 VDC unregulated power adapter) J1 34-pin Expansion I/O connector J3 Port I/O Configuration Jumper Block J4 DEBUG connector for Serial Adapter interface J5 DB-9 connector for UART0 RS232 interface J6 Analog I/O terminal block J7 Low pass filter connector J8 Serial Adapter target board power connector J9, J10 External crystal enable connectors
Development Kit includes a target board with a
RESET P0.7
Pin 1 Pin 2
C8051F310
Pin 2
J3
device pre-installed for evaluation and
J5
Prototype Area
J1
J9
J10
J7
J6
Pin 1
P3.3
C8051
F31X
J8
PWR
Pin 1
Prototyping Area I/O Connection Points
Figure 2. C8051F310 Target Board
P1
J4
DEBUG
Pin 1
Rev. 0.4 5
Page 6
AN179
6.1. System Clock Sources
The
C8051F310 enabled as the system clock source on reset. After reset, the internal oscillator operates at a frequency of
3.0625 MHz (±2%) by default but may be configured by software to operate at other frequencies. Theref ore, in many applications an external oscillator is not required. However, if you wish to operate the C8051F310 device at a fre­quency not available with the internal oscillator , an external crysta l may be used. Refer to the for more information on configuring the system clock source.
The target board is designed to facilitate the installation of an external crystal. Remove shorting blocks at jumpers J9 and J10 and install the crystal at the pads marked Y1. Install a 10 M resistor at R9 and install capacitors at C14 and C15 using values appropriate for the crystal you select. Refe r to the C8 051F31x dat a she et for more info r­mation on the use of external oscillators.
6.2. Switches and LEDs
Two switches are provided on the target board. Switch SW1 is connected to the RESET pin of the C8051F310. Pressing SW1 puts the device into its hardware-reset state. Switch SW2 is connected to the C8051F310’s general purpose I/O (GPIO) pin through jumpers. Pressing SW2 generates a logic low signal on the port pin. Remove the shorting block from the jumper to disconnec t SW2 from the port pins. The port pin signal is also routed to a pin on the J1 I/O connector. See Table 1 for the port pins and jumpers corresponding to each switch.
Two LEDs are also pr ovided on the t arget board . The red LED labeled PWR is used to indicate a power connection to the target board. The green LED labeled with a port pin name is connected to the C8051F310’s GPIO pin through jumpers. Remove the shorting block from the jumper to disconnect the LED from the port pin. The port pin signal is also routed to a pin on the J1 I/O connector. See Table 1 for the port pins and jumpers corresponding to each LED.
device installed on the target board features a calibrated programmable internal oscillator which is
C8051F31x
data sheet
Description I/O Jumper
SW1 Reset none SW2 P0.7 J3[3-4]
Green LED P3.3 J3[1-2]
Red LED PWR none
Table 1. Target Board I/O Descriptions
6 Rev. 0.4
Page 7
AN179
6.3. Expansion I/O Connector (J1)
The 34-pin Expansion I/O connector J1 provides access to all signal pins of the C8051F310 device. Pins for +3 V, digital ground and the output of an on-board low-pass filter are also available. A small through-hole prototyping area is also provided. All I/O signals routed to connector J1 are also routed to through-hole connection points between J1 and the prototyping area (see the connection point. See Table 2 for a list of pin descriptions for J1.
Pin # Description Pin # Description Pin # Description
1 +3VD (+3.3VDC) 13 P1.2 25 P2.6 2 PWM Output 14 P1.3 26 P2.7 3 P0.0 15 P1.4 27 P3.0 4 P0.1 16 P1.5 28 P3.1 5 P0.2 17 P1.6 29 P3.2 6 P0.3 18 P1.7 30 P3.3 7 P0.4 19 P2.0 31 P3.4 8 P0.5 20 P2.1 32 /RST (Reset)
9 P0.6 21 P2.2 33 GND (Ground) 10 P0.7 22 P2.3 34 GND (Ground) 11 P1.0 23 P2.4 12 P1.1 24 P2.5
Figure 2 on page 5
). Each connection point is labeled indicating the signal available at
Table 2. J1 Pin Descriptions
6.4. Target Board DEBUG Interface (J4)
The
DEBUG Serial Adapter to the target board for in-circuit debu gging and Flash pr ogramming. Table 3 shows the definitions.
connector (J4) provides access to the
Pin # Description
1 +3VD (+3.3VDC)
2, 3, 9 GND (Ground)
4C2DAT 5/RST (Reset) 6P3.0 7C2CK 8 Not Connected
10 J4_Pin_10
Table 3. DEBUG Connector Pin Descriptions
DEBUG
(C2) pins of the C8051F310. It is used to connect the
DEBUG
pin
Rev. 0.4 7
Page 8
AN179
6.5. Serial Interface (J5)
A RS232 transceiver circuit and DB-9 (J5) connector are provided on the target board to facilitate serial connec­tions to UART0 of the C8051F310. The TX, RX, RTS and CTS signals of UART0 may be connected to the DB-9 connector and transceiver by installing shorting blocks on jum p er s J3.
J3[5-6] - Install shorting block to connect UART0 TX (P0.4) to transceiver. J3[7-8] - Install shorting block to connect UART0 RX (P0.5) to transceiver. J3[9-10] - Install shorting block to connect UART0 RTS (P3.1) to transceiver. J3[11-12] - Install shorting block to connect UART0 CTS (P3.2) to transceiver.
6.6. Analog I/O (J6)
Several of the C8051F310 target device’s port pins are connected to the J6 terminal block. Refer to Table 4 for the J6 terminal block connections. Install a shorting block on J7[2-3] to connect the AIN2.4 input to the P2.4 pin of the target device.
Pin # Description
1 P2.5 / AIN2.5 2AIN2.4 3 GND (Ground) 4 P0.0 / Vref (Voltage Reference)
Table 4. J6 Terminal Block Pin Descriptions
6.7. Serial Adapter Target Board Power Connector (J8)
The Serial Adapter includes a connection to provide power to the target board. This connection is routed from J4[10] to J8[1]. Place a shorting block at jumper J8[2-3] to power the board directly from an AC/DC power adapter. Place a shorting block at jumper J8[1-2] to power the board from the Serial Adapter. Please note that the second option is not supported with either the EC1 or EC2 Serial Adapters.
6.8. Low-pass Filter (J7)
The C8051F310 target board features a low-pass filter that may be connected to port pin P2.4. Install a shorting block on J7[1-2] to connect the P2.4 pin of the target device to the low-pass filter input. The output of the low-pass filter is routed to the PWM signal at J1[2]. The C8051F310 may be programmed to generate a PWM (Pulse-Width Modulated) waveform which is then input to the low-pass filter to implement a user-controlled PWM digital-to-ana­log converter. Refer to Applications Note AN107 - Implementing 16-Bit PWM Usin g the PCA in the “documenta- tion” directory on the CD-ROM for a discussion on generating a programmable DC voltage level with a PWM waveform and low-pass filter.
8 Rev. 0.4
Page 9
AN179
7. Serial Adapter
The Serial Adapter provides the interface between the PC’s RS232 serial port and the C8051F31x’s in-system debug/programming circuitry. The Serial Adapter connects to the C8051F310 C2 debug interface on the target board using the 10-pin connector on the Serial Adapter labele d “JTAG”, see Figure 3. (The Serial Adapter supports both Silicon Laboratories JTAG and C2 debug interfaces.). All Serial Adapters may be powered from the target board, but the EC1 and EC2 Serial Adapter units cannot provide power to the target board. Table 5 shows the pin definitions for the Serial Adapter’s JTAG connector.
Notes:
1. When powering the Serial Adapter via the JTAG connector, the input voltage to the JTAG connector ’s power pin must be 3.0 to 3.6 VDC. Otherwise, the Serial Adapter must be powered directly by connecting the AC/DC adapter to the Serial Adapter’s DC power jack.
2. The Serial Adapter requires a target system clock of 32 Khz or greater.
Pin # Description
1 3.0 to 3.6 VDC Input 2 GND (Ground) 4TCK (C2DAT) 5TMS 6TDO 7 TDI (C2CLK)
3,8,9,10 Not Connected
Table 5. JTAG/DEBUG Connector Pin Descriptions
Stop
Run/
Pwr
JTAG
Pin 2
Pin 1
Serial
Adapter
RS232
Figure 3. Serial Adapter JTAG/DEBUG Connector
Rev. 0.4 9
Page 10
AN179
8. Schematic
10 Rev. 0.4
Figure 4. C8051F310 Target Board Schematic
Page 11
Notes:
AN179
Rev. 0.4 11
Page 12
AN179
Contact Information
Silicon Laboratories Inc. 4635 Boston Lane Austin, TX 78735 Tel: 1+(512) 416-8500 Fax: 1+(512) 416-9669 Toll Free: 1+(877) 444-3032
Email: productinfo@silabs.com Internet: www.silabs.com
The information in this document is believed to be accurate in all respects at the time of publication but is subject to change without notice. Silicon Laboratories assumes no responsibility for errors and omissions, and disclaims responsibility for any consequences resulting from the use of information included herein. Additionally, Silicon Laboratories assumes no responsibility for the functioning of undescribed features or parameters. Silicon Laboratories reserves the right to make changes without further notice. Silicon Laboratories makes no warranty, rep­resentation or guarantee regarding the suitability of its products for any particular purpose, nor does Silicon Laboratories assume any liability arising out of the application or use of any product or circuit, and specifically disclaims any and all liability, including without limitation conse­quential or incidental damages. Silicon Laboratories products are not designed, intended, or authorized for use in applications intended to support or sustain life, or for any other application in which the failure of the Silicon Laboratories product could create a situation where per­sonal injury or death may occur. Should Buyer purchase or use Silicon Laboratories products for any such unintended or unauthorized ap­plication, Buyer shall indemnify and hold Silicon Laboratories harmless against all claims and damages.
Silicon Laboratories and Silicon Labs are trademarks of Silicon Laboratories Inc. Other products or brandnames mentioned herein are trademarks or registered trademarks of their respective holders.
12 Rev. 0.4
Loading...