Wildcat (BL2000) - Digi International

Transcription

Wildcat (BL2000) - Digi International
Wildcat (BL2000)
C-Programmable Single-Board Computer with Ethernet
User’s Manual
019–0094
• 090529–O
Wildcat (BL2000) User’s Manual
Part Number 019-0094 • 090529–O • Printed in U.S.A.
©2001–2009 Digi International Inc. • All rights reserved.
No part of the contents of this manual may be reproduced or transmitted in any form or by any means
without the express written permission of Digi International.
Permission is granted to make one or more copies as long as the copyright page contained therein is
included. These copies of the manuals may not be let or sold for any reason without the express written
permission of Digi International.
Digi International reserves the right to make changes and
improvements to its products without providing notice.
Trademarks
Rabbit and Dynamic C are registered trademarks of Digi International Inc.
Rabbit 2000 is a trademark of Digi International Inc.
The latest revision of this manual is available on the Rabbit Web site, www.rabbit.com,
for free, unregistered download.
Digi International Inc.
www.rabbit.com
Wildcat (BL2000)
TABLE OF CONTENTS
Chapter 1. Introduction
1
1.1 BL2000 Description..............................................................................................................................1
1.2 BL2000 Features...................................................................................................................................1
1.2.1 Connector Options ........................................................................................................................2
1.3 Development and Evaluation Tools......................................................................................................3
1.3.1 Tool Kit .........................................................................................................................................3
1.3.2 Software ........................................................................................................................................4
1.4 CE Compliance .....................................................................................................................................5
1.4.1 Design Guidelines .........................................................................................................................6
1.4.2 Interfacing the BL2000 to Other Devices .....................................................................................6
Chapter 2. Getting Started
2.1
2.2
2.3
2.4
2.5
7
BL2000 Connections ............................................................................................................................7
Installing Dynamic C ..........................................................................................................................10
Starting Dynamic C ............................................................................................................................11
PONG.C ..............................................................................................................................................12
Where Do I Go From Here? ...............................................................................................................12
Chapter 3. Subsystems
13
3.1 BL2000 Pinouts ..................................................................................................................................14
3.1.1 Headers and Screw Terminals.....................................................................................................15
3.1.2 Power Supply Pins ......................................................................................................................16
3.2 Digital I/O ...........................................................................................................................................17
3.2.1 Digital Inputs...............................................................................................................................17
3.2.2 Digital Outputs............................................................................................................................19
3.3 Relay Outputs .....................................................................................................................................21
3.4 Serial Communication ........................................................................................................................22
3.4.1 RS-232 ........................................................................................................................................22
3.4.2 RS-485 ........................................................................................................................................22
3.4.3 Ethernet Port ...............................................................................................................................24
3.4.4 Programming Port .......................................................................................................................25
3.5 A/D Converter Inputs..........................................................................................................................27
3.6 D/A Converter Outputs .......................................................................................................................28
3.7 Memory...............................................................................................................................................30
3.7.1 SRAM .........................................................................................................................................30
3.7.2 Flash Memory .............................................................................................................................30
3.8 Programming Cable ............................................................................................................................31
3.8.1 Changing Between Program Mode and Run Mode ....................................................................31
3.9 Other Hardware...................................................................................................................................32
3.9.1 External Interrupts.......................................................................................................................32
3.9.2 Clock Doubler .............................................................................................................................32
3.9.3 Spectrum Spreader ......................................................................................................................33
Chapter 4. Software
35
4.1 An Overview of Dynamic C ...............................................................................................................35
4.1.1 Upgrading Dynamic C ................................................................................................................37
User’s Manual
4.2 Sample Programs................................................................................................................................ 38
4.2.1 General BL2000 Sample Programs ............................................................................................ 38
4.2.2 Digital I/O................................................................................................................................... 38
4.2.3 Serial Communication ................................................................................................................ 39
4.2.4 A/D Converter Inputs ................................................................................................................. 39
4.2.5 D/A Converter Outputs............................................................................................................... 40
4.2.6 Real-Time Clock ........................................................................................................................ 40
4.2.7 TCP/IP Sample Programs........................................................................................................... 40
4.3 BL2000 Libraries ............................................................................................................................... 41
4.4 BL2000 Function Calls ...................................................................................................................... 42
4.4.1 Board Initialization ..................................................................................................................... 42
4.4.2 Digital I/O................................................................................................................................... 44
4.4.3 Serial Communication ................................................................................................................ 45
4.4.4 Relay and LED Outputs.............................................................................................................. 46
4.4.5 A/D Converter Inputs ................................................................................................................. 47
4.4.6 D/A Converter Outputs............................................................................................................... 50
Chapter 5. Using the TCP/IP Features
53
5.1 TCP/IP Connections ........................................................................................................................... 53
5.2 TCP/IP Sample Programs................................................................................................................... 55
5.2.1 How to Set IP Addresses in the Sample Programs..................................................................... 55
5.2.2 How to Set Up your Computer’s IP Address for a Direct Connection ...................................... 56
5.3 Run the PINGME.C Sample Program................................................................................................ 57
5.4 Running More Sample Programs With a Direct Connection ............................................................. 58
5.5 Where Do I Go From Here? ............................................................................................................... 58
Appendix A. Specifications
59
A.1 Electrical and Mechanical Specifications.......................................................................................... 60
A.1.1 Headers ...................................................................................................................................... 63
A.2 Conformal Coating ............................................................................................................................ 64
A.3 Jumper Configurations ...................................................................................................................... 65
A.4 Use of Rabbit 2000 Parallel Ports ..................................................................................................... 67
Appendix B. Plastic Enclosure
69
B.1 Assembly ........................................................................................................................................... 70
B.2 Dimensions ........................................................................................................................................ 72
Appendix C. Power Supply
73
C.1 Power Supplies .................................................................................................................................. 73
C.1.1 Power for Analog Circuits ......................................................................................................... 74
C.2 Batteries and External Battery Connections...................................................................................... 74
C.2.1 Replacing the Backup Battery ................................................................................................... 75
C.2.2 Battery-Backup Circuit .............................................................................................................. 75
C.2.3 Power to VRAM Switch ............................................................................................................ 76
C.2.4 Reset Generator.......................................................................................................................... 77
C.3 Chip Select Circuit............................................................................................................................. 78
Appendix D. Demonstration Board
81
D.1 Connecting Demonstration Board ..................................................................................................... 81
Index
85
Schematics
89
Wildcat (BL2000)
1. INTRODUCTION
The BL2000 is a high-performance, C-programmable singleboard computer that offers built-in digital and analog I/O combined with Ethernet connectivity in a compact form factor. A
Rabbit® 2000 microprocessor operating at 22.1 MHz provides
fast data processing. An optional plastic enclosure is available,
and may be wall-mounted or panel-mounted.
1.1 BL2000 Description
The BL2000 is an advanced single-board computer that incorporates the powerful Rabbit
2000 microprocessor, flash memory, static RAM, digital I/O ports, A/D converter inputs,
D/A converter outputs, an SPDT relay output, and a 10Base-T Ethernet port.
1.2 BL2000 Features
• Rabbit® 2000 microprocessor operating at 22.1 MHz.
• 128K static RAM and 256K flash memory.
• Up to 28 digital I/O:
11 protected digital inputs (plus up to 7 dual-purpose unbuffered analog inputs that
may be software-configured for use as digital inputs) and 10 high-current digital
sinking outputs that may be factory-configured as sourcing outputs.
• 11 analog channels: nine 12-bit A/D converter inputs, two 12-bit D/A converter outputs.
• Onboard SPDT relay.
• One RJ-45 Ethernet port compliant with IEEE 802.3 standard for 10Base-T Ethernet
protocol.
• Eight status LEDs.
• 4 serial ports (2 RS-232 or 1 RS-232 with RTS/CTS, 1 RS-485, and 1 CMOS-compatible programming port).
• Real-time clock.
• Watchdog supervisor.
• Voltage regulator.
User’s Manual
1
• Backup battery.
• Ability to send e-mail and serve Web pages containing embedded data from singleboard computer.
• Remote program downloading and debugging capability via RabbitLink.
• Boards with the CE mark are CE-compliant.
• Optional plastic enclosure (can be wall-mounted or panel-mounted) and LED light
pipes (enclosure and light pipes are included with the Tool Kit, and are also sold separately).
Appendix A provides detailed specifications.
Four models of the BL2000 are available. Their standard features are summarized in
Table 1.
Table 1. BL2000 Series Features
Model
Features
BL2000
Full-featured single-board computer.
BL2010
BL2000 with eleven 10-bit A/D converter inputs (no D/A
converter outputs).
BL2020
BL2000 without Ethernet interface, only 6 LEDs.
BL2030
BL2010 without Ethernet interface, only 6 LEDs.
1.2.1 Connector Options
In addition to the standard screw-terminal connectors supplied on BL2000 boards, IDC
headers, bottom-mount connectors, and polarized friction-lock terminals may be factoryinstalled instead. Visit our Web site at www.rabbit.com or contact your Rabbit sales representative or authorized distributor for further information.
2
Standard screw terminals, accept
up to 14 AWG (1.5 mm2) wire
“Bottom-mount connector” to
mount BL2000 directly on 0.1"
pitch pins located on motherboard
2 × 17 IDC headers, 0.1" pitch
Polarized friction-lock terminals,
0.1" pitch
Wildcat (BL2000)
1.3 Development and Evaluation Tools
1.3.1 Tool Kit
A Tool Kit contains the hardware essentials you will need to use your own BL2000 singleboard computer. The items in the Tool Kit and their use are as follows:
• Getting Started instructions.
• Dynamic C CD-ROM, with complete product documentation on disk.
• Programming cable, used to connect your PC serial port to the BL2000.
• Universal AC adapter, 12 V DC, 1 A (includes Canada/Japan/U.S., Australia/N.Z.,
U.K., and European style plugs).
• Demonstration Board with pushbutton switches and LEDs. The Demonstration Board
can be hooked up to the BL2000 to demonstrate the I/O.
• Wire assembly to connect Demonstration Board to BL2000.
• Plastic enclosure with four screws and eight customer-installable light pipes.
• Screwdriver.
• Rabbit 2000 Processor Easy Reference poster.
• Registration card.
DIAG
Programming
Cable
Universal
AC Adapter
with Plugs
Screwdriver
PROG
Demo Board
Wiring Harness
Wildcat (BL2000)
LED Light Pipes
The BL2000 provides optional Ethernet connectivity in a low-cost, high-performance single-board
computer rich with the digital I/O, A/D, and D/A designers need for embedded control and monitoring
applications on a compact board. These Getting Started instructions included with the Tool Kit will
help you get your BL2100 up and running so that you can run the sample programs to explore its capabilities and develop your own applications.
Tool Kit Contents
The BL2000 Tool Kit contains the following items:
·
·
·
·
·
·
·
·
·
·
·
·
J1
• Dynamic C CD-ROM, with complete product documentation on disk.
• Programming cable, used to connect your PC serial port to the BL2000.
• Demonstration Board with pushbutton switches and LEDs. The Demonstration Board can be
hooked up to the BL2000 to demonstrate the I/O.
H2
LED1 LED2 LED3 LED4
• Plastic enclosure with four screws and eight customer-installable light pipes.
• Screwdriver.
• Getting Started instructions.
• Registration card.
SW3
SW4
1
SW2
BUZZER
2-
SW1
H
1
• Rabbit 2000 Processor Easy Reference poster.
··
· · 8-7
· · 6-5
· · 4-3
· · 1-2
· · 3-4 DEMO BOARD
· · 5-6
• Wire assembly to connect Demonstration Board to BL2000.
Visit our online Rabbit store at www.rabbit.com/store/ for the latest information on peripherals and
accessories that are available for the BL2000 single-board computers.
B
U
Z
LE ZE
D R
L 4
E
D
LE 3
D
LE 2
D
K 1
+
5
V
SW
4
S
W
3
SW
2
SW
1
G
N
D
• Universal AC adapter, 12 V DC, 1 A (includes Canada/Japan/U.S., Australia/N.Z., U.K., and
European style plugs).
Step 1 — Install Dynamic C®
Before doing any development, you must install Dynamic C. Insert the CD from the Development Kit in
your PC’s CD-ROM drive. If the installation does not auto-start, run the setup.exe program in the root
directory of the Dynamic C CD. Install any Dynamic C modules after you install Dynamic C.
Rabbit and Dynamic C are registered trademarks of Digi International Inc.
Getting Started
Instructions
Demo Board
Plastic Enclosure
Figure 1. BL2000 Tool Kit
User’s Manual
3
1.3.2 Software
The BL2000 is programmed using version 7.04 or later of Rabbit’s Dynamic C. A compatible version is included on the Tool Kit CD-ROM. Dynamic C v. 9.60 includes the popular
µC/OS-II real-time operating system, point-to-point protocol (PPP), FAT file system,
RabbitWeb, and other select libraries that were previously sold as individual Dynamic C
modules.
Rabbit also offers for purchase the Rabbit Embedded Security Pack featuring the Secure
Sockets Layer (SSL) and a specific Advanced Encryption Standard (AES) library. In addition to the Web-based technical support included at no extra charge, a one-year telephonebased technical support subscription is also available for purchase. Visit our Web site at
www.rabbit.com for further information and complete documentation, or contact your
Rabbit sales representative or authorized distributor.
4
Wildcat (BL2000)
1.4 CE Compliance
Equipment is generally divided into two classes.
CLASS A
CLASS B
Digital equipment meant for light industrial use
Digital equipment meant for home use
Less restrictive emissions requirement:
less than 40 dB µV/m at 10 m
(40 dB relative to 1 µV/m) or 300 µV/m
More restrictive emissions requirement:
30 dB µV/m at 10 m or 100 µV/m
These limits apply over the range of 30–230 MHz. The limits are 7 dB higher for frequencies above 230 MHz. Although the test range goes to 1 GHz, the emissions from Rabbitbased systems at frequencies above 300 MHz are generally well below background noise
levels.
The BL2000 single-board computer has been tested and was found to
be in conformity with the following applicable immunity and emission
standards. The BL2010, BL2020, and BL2030 single-board computers
are also CE qualified as they are sub-versions of the BL2000 singleboard computer. Boards that are CE-compliant have the CE mark.
NOTE: Earlier versions of the BL2000 sold before 2003 that do not have the CE mark
are not CE-compliant.
Immunity
The BL2000 series of single-board computers meets the following EN55024/1998 immunity standards.
• EN61000-4-3 (Radiated Immunity)
• EN61000-4-4 (EFT)
• EN61000-4-6 (Conducted Immunity)
Additional shielding or filtering may be required for a heavy industrial environment.
Emissions
The BL2000 series of single-board computers meets the following emission standards
using the enhanced-EMI PCB, Part# 175-0224 Rev. A, and the 668-0003 Rev. A Rabbit
2000 microprocessor.
• EN55022:1998 Class B
• FCC Part 15 Class B
Your results may vary, depending on your application, so additional shielding or filtering
may be needed to maintain the Class B emission qualification.
User’s Manual
5
1.4.1 Design Guidelines
Note the following requirements for incorporating the BL2000 series of single-board computers into your application to comply with CE requirements.
General
• The power supply provided with the Tool Kit is for development purposes only. It is the
customer’s responsibility to provide a CE-compliant power supply for the end-product
application.
• When connecting the BL2000 single-board computer to outdoor cables, the customer is
responsible for providing CE-approved surge/lighting protection.
• Rabbit recommends placing digital I/O or analog cables that are 3 m or longer in a
metal conduit to assist in maintaining CE compliance and to conform to good cable
design practices.
• When installing or servicing the BL2000, it is the responsibility of the end-user to use
proper ESD precautions to prevent ESD damage to the BL2000.
Safety
• All inputs and outputs to and from the BL2000 series of single-board computers must
not be connected to voltages exceeding SELV levels (42.4 V AC peak, or 60 V DC).
• The lithium backup battery circuit on the BL2000 single-board computer has been
designed to protect the battery from hazardous conditions such as reverse charging and
excessive current flows. Do not disable the safety features of the design.
1.4.2 Interfacing the BL2000 to Other Devices
Since the BL2000 series of single-board computers is designed to be connected to other
devices, good EMC practices should be followed to ensure compliance. CE compliance is
ultimately the responsibility of the integrator. Additional information, tips, and technical
assistance are available from your authorized Rabbit distributor, and are also available on
our Web site at www.rabbit.com.
6
Wildcat (BL2000)
2. GETTING STARTED
Chapter 2 explains how to connect the programming cable and
power supply to the BL2000.
2.1 BL2000 Connections
1. Attach the BL2000 to the plastic enclosure base.
Position the BL2000 over the plastic enclosure base as shown below in Figure 2. Attach
the BL2000 to the base at the top left and bottom right positions using the two 4-40 × ¼
screws supplied with the enclosure.
ery
TION
PW
R
LNK
ACT
BAD
CAU
+
+
DS4
GND
GND
10
C52
DS3
C51
GN D
1
C50
DS2
GND
Q6
DS8
C37
C42
C49
DS1
+
DS7
C48
GND
BT1
+
C32
R43 R44 R45 R46 R47 R48 R49
D7
D8
D9 D10 D11 D12
D6
C47
K1
Q4
G
DS6
Q3
DS5
C46
Y1
R26
R25
D
6
1
C45
3
2
R29
R21
Q1
5
R56
GND
C9
R14
C12
C15
40
C40
3 C4
1 R5
7 R6
R52
C44
C77
J12
C5 C7
R8
U3
R22
C21
4
1
AGND
AGND
R3
C78
R18
C26
Q5
R41 R42
D4
D5
9 R5
R38
C43
GND
R2
C79
R23
C14 R2
4
U5
15
C35
GND
GN D
C36
R3
8
9
R60
R54
R5
GND
9 R5
5 R5
C38
GND
1 C3
R50
GND
IN2
7 R5
R36
J7
POWER IN
J8
J10
R33
C33
3
C34
R3
2
R152
R32
R34
R35
R40
D3
C31 R31
L1
C13 C76
JP2
90
4
AG ND
AGND
C75 R5
U6
C29
1
1
AGND
U2
65
R15
1
TVS
D2
U4
Q2
R30
AGND DAC1 DAC0 ADC8 ADC7 ADC6 ADC5 ADC4 ADC3 ADC2 ADC1 ADC0
AGND
R17
R154 U1
C18
C22
R27
R28
C27
C19
Y3 Y2
C17
C25
C28
J4
J3
TXD1
C2C3
C8
C11
R11
R10
R15
JP17
C80 R130
R16
R15
R19
R153
C16
C24
TXD2 RXD1
GND
C4 R7
C10 R12
R20
C20
J6 C23
D1
RXD2
R13C1
R9
OU
T0
485+
GND
OU
T1
485-
J5
OU
T2
IN0
GN D
OU
T3
IN1
Batt
RST-
GND
R4
R6
S
+K
GND
+
GND
GND
R1
C85
+RAW
J1
J2
GND
J11
J9
IN3
IN4
IN5
IN6
IN7
IN8
IN9
IN10
OUT8 OUT9
GND
OUT0
OUT1 OUT2 OUT3 OUT4 OUT5 OUT6 OUT7
NO
COM
NC
GND
Figure 2. Attach BL2000 to Plastic Enclosure Base
The plastic enclosure base facilitates handling the BL2000 during development, and provides an attractive mounting alternative. Alternatively, you may wish to use standoffs to
protect the components on the other side of the board. The plastic enclosure is offered as a
separate option when individual BL2000 boards are purchased.
NOTE: Appendix B, “Plastic Enclosure,” provides additional information and specifications
for the plastic enclosure.
User’s Manual
7
2. Connect the programming cable to download programs from your PC and to debug the
BL2000.
Connect the 10-pin PROG connector of the programming cable to header J5 on the BL2000.
Ensure that the colored edge lines up with pin 1 as shown. (Do not use the DIAG connector,
which is used for a normal serial connection.) Connect the other end of the programming
cable to a COM port on your PC.
To
PC COM port
Programming Cable
Red
shrink wrap
Colored edge
PROG
DIAG
GN D
R4
R6
GND
J5
PROG
C78
R3
U5
AGND
J12
C5 C7
C9
R22
C21
10
DS3
K1
DS4
Q4
1
R29
DS2
R26
R25
6
40
3
1 2
C26
C12
R21
C77 Q1
Y1
4
J5
R14
R18
5
Y2
C76
R152
15
Q2
R30
C19
C13
65
U4
AGND
U3
R17
JP2
90
C25
AG ND
R2
DS1
C18
C22 R27 R28 C27
R151
C23
AGND
C75 R5 C79
R8
C80 R130
R16
R15
R19
R153 R154 U1
Y3
J6
AGND
C4 R7
C17
C24
C2C3 AGND
C8 U2
R23
R24
C14
C16
GND
C15
R20
C20
R13C1
R9
AGND DAC1 DAC0 ADC8 ADC7 ADC6 ADC5 ADC4 ADC3 ADC2 ADC1 ADC0
C11
R11
R10
R157
JP1
C10R12
J4
J3
485+ RXD2 TXD2 RXD1 TXD1
PWR
GND
485-
LNK
GND
IN0
ACT
R1
IN1
OUT 0
GND
RST-
+
J1
J2
+K
C85
+RAW GND
Figure 3. Programming Cable Connections
NOTE: Never disconnect the programming cable by pulling on the ribbon cable. Carefully
pull on the connector to remove it from the header.
NOTE: Some PCs now come equipped only with a USB port. It may be possible to use an
RS-232/USB converter (Part No. 20-151-0178) with the programming cable supplied with
the Tool Kit. Note that not all RS-232/USB converters work with Dynamic C.
8
Wildcat (BL2000)
3. Connect the power supply.
First, prepare the AC adapter for the country where it will be used by selecting the plug.
The BL2000 Tool Kit presently includes Canada/Japan/U.S., Australia/N.Z., U.K., and
European style plugs. Snap in the top of the plug assembly into the slot at the top of the
AC adapter as shown in Figure 4, then press down on the spring-loaded clip below the
plug assembly to allow the plug assembly to click into place.
Connect the bare ends of the power supply to the +RAW and GND positions on screwterminal header J2 as shown in Figure 4.
Red
Heat-Shrink
Tubing
+
+RAW GND
J2
RESET
PIN
–
J1
J2
GND
+K
GND
RST-
IN1
IN0
GND
485-
GN D
C10R12
GND
J5
R4
R6
R1
485+ RXD2 TXD2 RXD1 TXD1
R13C1
R9
C80 R130
R16
R15
R19
R20
C20
R153
C16
Y3
C19
C24
J7
POWER IN
GND
GND
GND
+
+
3
L1
U5
R32
R34
R35
R40
D3
R33
GN D
C35 R38 R52 C40 R56 R60
2
C31 R31
C36 R39 R53 C41 R57 R61
4
C33 R36 R50 C38 R54 R58
1
C34 R37 R51 C39 R55 R59
Snap plug into place
Q2
R30
C29
D2
Assemble
AC Adapter
2
R151
Remove slot cover,
insert tab into slot
U4
C25
C28
TVS1
1
C23
D1
R154
C22 R27 R28 C27
Y2
C17
J6
GND
GND
R41
D4
C43
GND
C44
GND
J8
J10
IN2
IN3
IN4
IN5
IN6
IN7
IN8
IN9
IN10 OUT8 OUT9 GND
Figure 4. Power Supply Connection
4. Apply power.
Plug in the AC adapter. If you are using your own power supply, it must provide 9 V to 40 V
DC—voltages outside this range could damage the BL2000.
CAUTION: Unplug the power supply while you make or otherwise work with the connections
to the headers. This will protect your BL2000 from inadvertent shorts or power spikes.
NOTE: The green PWR LED and the red BAD LED on the opposite end of the board
should come on, indicating that the BL2000 is now ready to be used.
NOTE: A hardware RESET is done by unplugging the AC adapter, then plugging it back in,
or by momentarily grounding the board reset input at pin 9 on screw-terminal header J2.
User’s Manual
9
2.2 Installing Dynamic C
If you have not yet installed Dynamic C version 7.04 (or a later version), do so now by
inserting the Dynamic C CD in your PC’s CD-ROM drive. The CD will auto-install unless
you have disabled auto-install on your PC.
If the CD does not auto-install, click Start > Run from the Windows Start button and
browse for the Dynamic C setup.exe file on your CD drive. Click OK to begin the
installation once you have selected the setup.exe file.
The online documentation is installed along with Dynamic C, and an icon for the documentation menu is placed on the workstation’s desktop. Double-click this icon to reach the
menu. If the icon is missing, create a new desktop icon that points to default.htm in the
docs folder, found in the Dynamic C installation folder.
The latest versions of all documents are always available for free, unregistered download
from our web sites as well.
The Dynamic C User’s Manual provides detailed instructions for the installation of
Dynamic C and any future upgrades.
NOTE: If you have an earlier version of Dynamic C already installed, the default installation
of the later version will be in a different folder, and a separate icon will appear on your desktop.
10
Wildcat (BL2000)
2.3 Starting Dynamic C
Once the BL2000 is connected to your PC and to a power source, start Dynamic C by
double-clicking on the Dynamic C icon on your desktop or in your Start menu.
Dynamic C defaults to using the serial port on your PC that you specified during installation. If the port setting is correct, Dynamic C should detect the BL2000 and go through a
sequence of steps to cold-boot the BL2000 and to compile the BIOS. (Some versions of
Dynamic C will not do the initial BIOS compile and load until the first time you compile a
program.)
If you are using a USB port to connect your computer to the BL2000, choose Options >
Project Options and select “Use USB to Serial Converter.” Click OK.
If you receive the message No Rabbit Processor Detected, the programming
cable may be connected to the wrong COM port, a connection may be faulty, or the target
system may not be powered up. First, check both ends of the programming cable to ensure
that it is firmly plugged into the PC and the programming port.
If there are no faults with the hardware, select a different COM port within Dynamic C.
From the Options menu, select Communications. Select another COM port from the list,
then click OK. Press <Ctrl-Y> to force Dynamic C to recompile the BIOS. If Dynamic C
still reports it is unable to locate the target system, repeat the above steps until you locate the
active COM port. You should receive a Bios compiled successfully message
once this step is completed successfully.
If Dynamic C appears to compile the BIOS successfully, but you then receive a communication error message when you compile and load a sample program, it is possible that your
PC cannot handle the higher program-loading baud rate. Try changing the maximum
download rate to a slower baud rate as follows.
• Locate the Serial Options dialog in the Dynamic C Options > Communications
menu. Select a slower Max download baud rate.
If a program compiles and loads, but then loses target communication before you can
begin debugging, it is possible that your PC cannot handle the default debugging baud
rate. Try lowering the debugging baud rate as follows.
• Locate the Serial Options dialog in the Dynamic C Options > Communications
menu. Choose a lower debug baud rate.
User’s Manual
11
2.4 PONG.C
You are now ready to test your set-up by running a sample program.
Find the file PONG.C, which is in the Dynamic C SAMPLES folder. To run the program,
open it with the File menu (if it is not still open), compile it using the Compile menu, and
then run it by selecting Run in the Run menu. The STDIO window will open and will display a small square bouncing around in a box.
This program does not test the serial ports, the I/O, or the TCP/IP part of the board, but
does ensure that the board is basically functional. The sample program described in
Section 5.3, “Run the PINGME.C Sample Program,” tests the TCP/IP portion of the
board.
2.5 Where Do I Go From Here?
NOTE: If you purchased your BL2000 through a distributor or Rabbit partner, contact the
distributor or partner first for technical support.
If there are any problems at this point:
• Use the Dynamic C Help menu to get further assistance with Dynamic C.
• Check the Rabbit Technical Bulletin Board and forums at www.rabbit.com/support/bb/
and at www.rabbit.com/forums/.
• Use the Technical Support e-mail form at www.rabbit.com/support/.
If the sample program ran fine, you are now ready to go on to explore other BL2000 features and develop your own applications.
Chapter 3, “Subsystems,” provides a description of the BL2000’s features, Chapter 4,
“Software,” describes the Dynamic C software libraries and introduces some sample programs, and Chapter 5, “Using the TCP/IP Features,” explains the TCP/IP features.
12
Wildcat (BL2000)
3. SUBSYSTEMS
Chapter 3 describes the principal subsystems for the BL2000.
• Digital I/O
• Relay Outputs
• Serial Communication
• A/D Converter Inputs
• D/A Converter Outputs
• Memory
• External Interrupts
Figure 5 shows these Rabbit-based subsystems designed into the BL2000.
BL2000
Programming
Port
32 kHz 11 MHz
osc
osc
RS-232
Digital
Inputs
Digital
Outputs
RS-485
SRAM
Flash
RABBIT
2000
Relay
Output
A/D
Converter
Ethernet
D/A
Converter
Figure 5. BL2000 Subsystems
User’s Manual
13
3.1 BL2000 Pinouts
The BL2000 pinouts are shown in Figure 6(a) and Figure 6(b).
2
IN4
3
IN5
4
IN6
J2
J8
J7
12
11
+RAW
J8
1
IN3
J8
IN2
10
J6
GND
+K
8
IN1
IN7
6
7
IN0
IN8
7
6
485–
IN9
8
Serial Port Nomenclature
5
485+
IN10
9
HeaderJ2 Rabbit 2000
4
RXD2
OUT8
10
3
TXD2
OUT9
11
2
RXD1
GND
12
1
TXD1
OUT0
1
12
AGND
OUT1
2
TxB
RxB
TxC/RTS
RxC/CTS
TXD1
RXD1
TXD2
RXD2
J9
J4
11
J8
/RESET
5
J8
9
DAC1
OUT2
3
10
DAC0
OUT3
4
9
ADC8
OUT4
5
8
ADC7
OUT5
6
7
ADC6
OUT6
7
6
ADC5
OUT7
8
5
ADC4
NO
9
4
ADC3
COM
10
3
ADC2
NC
11
2
ADC1
GND/VCC
12
1
ADC0
Battery
DS1
DS2
DS3
DS4
DS5
DS6
DS7
DS8
GND
VBAT–EXT
GND
J12
BAD OUT3 OUT2 OUT1 OUT0 ACT LNK PWR
Figure 6(a). BL2000 Pinouts (screw-terminal headers)
14
Wildcat (BL2000)
3.1.1 Headers and Screw Terminals
All BL2000 models are equipped with 1 × 12 screw terminal strips (J2, J4, J8, and J9) and
a 2-pin power jack (J7). The BL2000 and BL2010 also have the RJ-45 Ethernet jack (J6).
There is provision on the circuit board to accommodate one of the following types of
connectors instead of the screw-terminal strips.
• 2 × 17 IDC headers with a pitch of 0.1".
• 1 × 17 friction-lock connectors with a pitch of 0.1".
• 1 × 17 bottom-mount sockets with a pitch of 0.1". The holes for the bottom-mount
sockets are on the “outside” edges of the connector locations
The pinouts for these connectors are shown in Figure 6(b).
IN2
IN3
GND
IN4
IN5
GND
IN6
IN7
GND
IN8
IN9
GND
IN10
OUT8
GND
OUT9
GND
1
3
5
7
9
11
13
15
17
19
21
23
25
27
29
31
33
OUT0
OUT1
GND
OUT2
OUT3
GND
OUT4
OUT5
GND
OUT6
OUT7
GND
NO
COM
GND
NC
GND/VCC
1
3
5
7
9
11
13
15
17
19
21
23
25
27
29
31
33
J1
J10
J7
J6
Serial Port Nomenclature
HeaderJ2 Rabbit 2000
TxB
RxB
TxC/RTS
RxC/CTS
TXD1
RXD1
TXD2
RXD2
J11
J3
Battery
33
31
29
27
25
23
21
19
17
15
13
11
9
7
5
3
1
+RAW
GND
GND
+K
/RESET
GND
IN1
IN0
GND
485–
485+
GND
RXD2
TXD2
GND
RXD1
TXD1
33
31
29
27
25
23
21
19
17
15
13
11
9
7
5
3
1
AGND
DAC1
AGND
DAC0
ADC8
AGND
ADC7
ADC6
AGND
ADC5
ADC4
AGND
ADC3
ADC2
AGND
ADC1
ADC0
DS1
DS2
DS3
DS4
DS5
DS6
DS7
DS8
GND
VBAT–EXT
GND
J12
BAD OUT3 OUT2 OUT1 OUT0 ACT LNK PWR
Figure 6(b). BL2000 Pinouts (other 0.1" headers)
User’s Manual
15
3.1.2 Power Supply Pins
Instead of connecting an AC adapter to the power supply jack, J7, the input power supply
(9 V to 40 V DC) may be connected to pins 12 and 11 on header J2 (see Figure 6(a) or
Figure 6(b)).
Pin 12 on header J9 or J10 is normally GND by factory default, but may be changed to
Vcc by removing resistor R161 and installing resistor R160. See Appendix C, “Power
Supply,” for more information on this configuration and for information on backupbattery options.
16
Wildcat (BL2000)
3.2 Digital I/O
3.2.1 Digital Inputs
The BL2000 has 11 digital inputs, IN0–IN10, each of which is protected over a range of
–36 V to +36 V. The inputs are factory-configured to be pulled up to +5 V, but they can
also be pulled down by moving the surface-mounted jumper at JP6 as shown in Figure 7.
JP6
JP6
3
Vcc
1
Factory
Default
27 kW
22 kW
10 nF
Rabbit 2000™
Microprocessor
GND
Figure 7(a). BL2000 Digital Inputs [Pulled Up—JP6(1–2) connected]
JP6
JP6
3
Vcc
1
27 kW
+5 V
22 kW
10 nF
Rabbit 2000™
Microprocessor
GND
Figure 7(b). BL2000 Digital Inputs [Pulled Down—JP6(2–3) connected]
User’s Manual
17
JP6
3
Vcc
1
27 kW
22 kW
10 nF
Rabbit 2000™
Microprocessor
Figure 7(c). Example of Logic Gate Driving BL2000 Digital Input
The actual switching threshold is approximately 2.40 V for channels IN0–IN10. Anything
below this value is a logic 0, and anything above is a logic 1.
The A/D converter inputs can be used as additional digital inputs using the parameters
specified for the digIn software function call. The default threshold for channels IN11–
IN21 is also set to 2.40 V, but may be changed by adding two lines to your program as discussed for the digIn software function call.
The digital inputs are each fully protected over a range of -36 V to +36 V, and can handle
short spikes of ±40 V.
Normal Switching
Levels
Digital Input Voltage
+40 V
+36 V
Spikes
Spikes
+3.3 V
–40 V
Spikes
Figure 8. BL2000 Digital Input Protected Range
18
Wildcat (BL2000)
3.2.2 Digital Outputs
The BL2000 has 10 digital outputs, OUT0–OUT9, each of which can either sink or source
up to 200 mA, depending on how the outputs are configured. On boards that carry the CE
mark, OUT8 and OUT9 are each capable of sinking up to 750 mA.
Each output can be configured individually as either a sinking or a sourcing output as shown
in Figure 9. The outputs can be pulled as a group to Vcc, +K, or GND through 27 kΩ resistors. Tie the outputs high to either Vcc or +K when using the outputs as sinking outputs (via
0 Ω resistors at R32 or R35 respectively), or tie the outputs to GND via R34 when using the
outputs as sourcing outputs. +K is an externally supplied voltage of up to 40 V DC, and is
used primarily in combination with current sourcing outputs, and must also be connected to
an external supply when an inductive load is connected to a sinking output.
NOTE: Remove the 27 kΩ resistors (R143–R150) from the output circuits if no pullup/down is required to avoid leakage between the outputs. These resistors are located
on the bottom side of the BL2000 board above the solder points for screw terminal
header J9.
SINKING OUTPUT—Factory Default
K
Vcc
0W
27 kW
SOURCING OUTPUT—Special Order
Vcc
0W
K
27 kW
User’s Manual
19
Figure 9. BL2000 Digital Outputs
The locations of the output pull-up/pull-down select resistors R32, R34, and R35 are
shown in Figure 10.
GND
GN D
GND
+
BAD
Q5
C32
R41 R42 R43 R44 R45 R46 R47 R48 R49
D4 D5 D6 D7 D8 D9 D10 D11 D12
C43
GND
OUT 1
Battery
SRAM
+
G
C44
GND
C45
C46
C47
C48
GND
C49
GND
C50
C51
GN D
C52
Q6
DS8
C37 C42
GND
C35 R38 R52 C40 R56 R60
GND
C36 R39 R53 C41 R57 R61
J7
POWER IN
R33
C33 R36 R50 C38 R54 R58
3
C31 R31
L1
C34 R37 R51 C39 R55 R59
2
+
+
4
BT1
S
1
Q3
DS7
D2
R32
R34
R35
R40
D3
D
DS6
C29
Q4
DS5
TVS1
U6
OUT 2
C26
OUT 3
R29
Q2
R30
C25
C28
DS4
D1
OUT 0
R32
R34
R35
GND
GND
GND
J8
J10
J11
J9
IN2
IN3
IN4
IN5
IN6
IN7
IN8
IN9
IN10 OUT8 OUT9 GND
OUT0 OUT1 OUT2 OUT3 OUT4 OUT5 OUT6 OUT7
NO
COM
NC GND/VCC
Figure 10. Locations of Resistors R32, R34, and R35
All BL2000 models are factory-configured with sinking outputs and pull-up resistors tied
to Vcc via a 0 Ω resistor at R32.
20
Wildcat (BL2000)
3.3 Relay Outputs
Figure 11 shows the BL2000 relay contact connections. A diode across the coil provides a
return path for inductive spikes, and snubbers across the relay contacts protect the relay
contacts from inductive spikes.
9
11
J9
Vcc
1
10
Rabbit 2000™
Microprocessor
10
8
COM
7
NO
9
NC
3
COM
4
NO
2
NC
47 W
100 nF
47 W
100 nF
Figure 11. BL2000 Relay Output Contact Connections
The relay is driven by PA0, which is the same Rabbit 2000 parallel port that drives OUT0
and LED DS4. OUT0 therefore works in parallel with the relay output.
The relay included on the BL2000 has contacts rated for 1 A @ 30 V DC or 300 mA @
120 V AC. When using the BL2000 in a CE-certified application, the voltages handled by
the relay must not exceed SELV levels (42.4 V AC peak, or 60 V DC).
User’s Manual
21
3.4 Serial Communication
The BL2000 has one RS-232 serial channel (with RTS/CTS) or two RS-232 (3-wire)
channels, one RS-485 serial channel, and one CMOS serial channel. The RS-232 channel(s) are configured with the serMode software function call. Table 2 summarizes the
options.
Table 2. Serial Communication Configurations
Serial Port
Mode
B
C
D
0
RS-232, 3-wire
RS-232, 3-wire
RS-485
1
RS-232, 5-wire
CTS/RTS
RS-485
All four serial ports operate in an asynchronous mode. An asynchronous port can handle 7
or 8 data bits. A 9th bit address scheme, where an additional bit is sent to mark the first
byte of a message, is also supported. Serial Port A can be operated alternately in the
clocked serial mode. In this mode, a clock line synchronously clocks the data in or out.
Either of the two communicating devices can supply the clock. The BL2000 series boards
typically use all four ports in the asynchronous serial mode. Serial Ports B and C are used
for RS-232 communication, and Serial Port D is used for RS-485 communication. The
BL2000 uses an 11.0592 MHz crystal, which is doubled to 22.1184 MHz. At this frequency, the BL2000 supports standard baud rates up to a maximum of 230,400 bps.
3.4.1 RS-232
The BL2000 RS-232 serial communication is supported by an RS-232 transceiver, U1. U1
provides the voltage output, slew rate, and input voltage immunity required to meet the
RS-232 serial communication protocol. Basically, the chip translates the Rabbit 2000’s
CMOS/TTL signals to RS-232 signal levels. Note that the polarity is reversed in an
RS-232 circuit so that a +5 V output becomes approximately -10 V and 0 V is output as
+10 V. U1 also provides the proper line loading for reliable communication.
RS-232 can be used effectively at this baud rate for distances up to 15 m.
3.4.2 RS-485
The BL2000 has one RS-485 serial channel, which is connected to the Rabbit 2000 Serial
Port D through U8, an RS-485 transceiver. U8 supports the RS-485 serial communication
protocol. The chip’s slew rate limiters provide for a maximum baud rate of 230,400 bps,
which allows for a network of up to 300 m (or 1000 ft). The half-duplex communication
uses the Rabbit 2000’s PB6 pin to control the transmit enable on the communication line.
The BL2000 can be used in an RS-485 multidrop network. Connect the 485+ to 485+ and
485– to 485– using single twisted-pair wires (nonstranded, tinned) as shown in Figure 12.
Note that a common ground is recommended.
22
Wildcat (BL2000)
RST-
IN1
IN0
485-
GND
J4
J3
AGND
C75 R5 C79
AGND
R2
AG ND
C78
R3
AGND
C5 C7
AGND
R8
U3
R18
R21
J12
C9
C12
R14
AGND DAC1 DAC0 ADC8 ADC7 ADC6 ADC5 ADC4 ADC3 ADC2 ADC1 ADC0
C2C3 AGND
C8 U2
C4 R7
C76
R152
C11
R11
R10
R157
JP1
R17
C13
J1
J2
+RAW GND
GND
R1
+K
GND
RST-
IN1
GND
R4
R6
IN0
GND
GND
C18
485+ RXD2 TXD2 RXD1 TXD1
J5
R13C1
R9
Y3
C19
Y2
U5
J4
J3
GN
AGND
C75 R5 C79
AGND
C4 R7
C76
R152
C11
R11
R10
R157
JP1
R17
C13
R2
AGND
R23
C14
R3
AG ND
C78
AGND
R21
C9
R14
C12
GND
R1
GND
GND
R4
R6
GND
R13C1
R9
GND
C18
485+ RXD2 TXD2 RXD1 TXD1
RX
Y3
C19
Y2
U5
J4
J3
R2
R3
AGND
C5 C7
AGND
R8
U3
R18
C15
C77 Q1
AG ND
C78
R22
C21
R21
C9
J12
C12
R14
AGND DAC1 DAC0 ADC8 ADC7 ADC6 ADC5 ADC4 ADC3 ADC2 ADC1 ADC0
AGND
C76
R152
C11
R11
R10
R157
JP1
R17
C13
C4 R7
C75 R5 C79
AGND
JP2
C2C3 AGND
C8 U2
C80 R130
R16
R15
R19
R153 R154 U1
485-
GN D
C16
C10R12
C17
R20
C20
IN0
485+
C5 C7
R18
U3
R8
C77 Q1
R22
C21
IN1
5
RST-
485–
+K
6
+RAW GND
IN0
J5
7
J1
J2
IN1
J12
8
AGND DAC1 DAC0 ADC8 ADC7 ADC6 ADC5 ADC4 ADC3 ADC2 ADC1 ADC0
J2
JP2
C2C3 AGND
C8 U2
C80 R130
R16
R15
R19
R153 R154 U1
485-
GN D
C10R12
C16
R20
C20
C17
C85
GND
485+ RXD2 TXD2 RXD1 TXD1
J5
JP2
C15
C77 Q1
C85
GN D
C85
GND
C18
R22
C21
+
+K
GND
R13C1
R9
U5
/RESET
+
+RAW GND
GND
R4
R6
C19
Y2
C80 R130
R16
R15
R19
R153 R154 U1
Y3
+
J1
J2
R1
C10R12
C16
R20
C20
C17
+K
10
23
R23
C14
DS1
C15
DS1
R23
C14
DS1
User’s Manual
9
PWR
LNK
PWR
LNK
PWR
LNK
Ground recommended
Figure 12. Multidrop BL2000 Network
R24
DS2
R24
DS2
R24
DS2
The BL2000 comes with a 220 Ω termination resistor and two 681 Ω bias resistors installed
and enabled with jumpers across pins 1–2 and 3–4 on header JP1, as shown in Figure 13.
U8
6
2
4
bias
1
3
R68
681 W
termination
R70
220 W
bias
R77
681 W
GND
4
2
Factory
Default
JP1
AGND DAC1 DAC0 ADC8 ADC7 ADC6 ADC5 ADC4 ADC3 ADC2 ADC1 ADC0
C2C3 AGND
C8 U2
AGND
AGND
C75 R5 C79
R2
AG ND
C78
R3
AGND
U3
C4 R7
U1
AGND
C5 C7
R8
J12
C9
R14
R18
C11
R11
R10
R157
JP1
485–
J4
J3
RXD1 TXD1
C85
7
JP1
1
+
485+
3
C12
Figure 13. RS-485 Termination and Bias Resistors
The bias and termination resistors in a multidrop network should only be enabled on both
end nodes of the network. Disable the termination and bias resistors on the intervening
BL2000 units in the network by removing both jumpers from header JP1.
3.4.3 Ethernet Port
Figure 14 shows the pinout for the Ethernet port (J6). Note that there are two standards for
numbering the pins on this connector—the convention used here, and numbering in reverse
to that shown. Regardless of the numbering convention followed, the pin positions relative
to the spring tab position (located at the bottom of the RJ-45 jack in Figure 14) are always
absolute, and the RJ-45 connector will work properly with off-the-shelf Ethernet cables.
ETHERNET
J6
1
8
1.
2.
3.
6.
RJ-45 Plug
E_Tx+
E_Tx–
E_Rx+
E_Rx–
RJ-45 Jack
Figure 14. RJ-45 Ethernet Port Pinout
RJ-45 pinouts are sometimes numbered opposite to the way shown in Figure 14.
24
Wildcat (BL2000)
The transformer/connector assembly ground is connected to the BL2000 printed circuit
board digital ground via a 0 Ω resistor “jumper,” R1, as shown in Figure 15.
RJ-45 Ethernet Plug
R1
Board
Ground
Chassis
Ground
Figure 15. Isolation Resistor R1
The factory default is for the 0 Ω resistor “jumper” at R1 to be installed. In high-noise
environments, it may be useful to ground the transformer/connector assembly directly
through the chassis ground. This will be especially helpful to minimize ESD and/or EMI
problems. Once you have removed the 0 Ω resistor “jumper,” R1, use a ring lug to attach
the BL2000 to the chassis ground, thereby grounding the transformer/connector assembly.
A convenient position for the ring lug has been provided at the top-left mounting screw
hole near the RJ-45 jack as shown in Figure 16.
+RAW GND
Remove R1
J1
J2
Add solder lug to
connect ground
wire to chassis
GND
R1
+K
GND
RST-
IN1
IN0
GND
485-
GN D
R4
R6
C10R12
R20
C20
485+ RXD2 TXD2 RXD1 TXD1
GND
J5
R13C1
R9
C80 R130
R16
R15
R19
R153
C16
Y3
C19
C24
R151
C23
D1
U4
Q2
R154
U5
C22 R27 R28 C27
Y2
C17
J6
GND
Figure 16. Recommended Location for Ring Lug
3.4.4 Programming Port
The BL2000 has a 10-pin programming header labeled J5. The programming port uses the
Rabbit 2000’s Serial Port A for communication. Dynamic C uses the programming port to
download and debug programs.
The programming port is also used for the following operations.
• Cold-boot the Rabbit 2000 after a reset.
• Remotely download and debug a program over an Ethernet connection using the
RabbitLink EG2110.
• Fast copy designated portions of flash memory from one Rabbit-based board (the
master) to another (the slave) using the Rabbit Cloning Board.
User’s Manual
25
Alternate Uses of the Serial Programming Port
All three clocked Serial Port A signals are available as
• a synchronous serial port
• an asynchronous serial port, with the clock line usable as a general CMOS input
The serial programming port may also be used as a serial port via the DIAG connector on
the serial programming cable.
In addition to Serial Port A, the Rabbit 2000 startup-mode (SMODE0, SMODE1), status,
and reset pins are available on the serial programming port.
The two startup mode pins determine what happens after a reset—the Rabbit 2000 is
either cold-booted or the program begins executing at address 0x0000. These two
SMODE pins can be used as general inputs once the cold boot is complete.
The status pin is used by Dynamic C to determine whether a Rabbit microprocessor is
present. The status output has three different programmable functions:
1. It can be driven low on the first op code fetch cycle.
2. It can be driven low during an interrupt acknowledge cycle.
3. It can also serve as a general-purpose output.
The /RESET_IN pin is an external input that is used to reset the Rabbit 2000 and the
onboard peripheral circuits on the RabbitCore module. The serial programming port can be
used to force a hard reset on the RabbitCore module by asserting the /RESET_IN signal.
Refer to the Rabbit 2000 Microprocessor User’s Manual for more information.
26
Wildcat (BL2000)
3.5 A/D Converter Inputs
The single 14-channel A/D converter used in the BL2000 has a resolution of 12 bits (models
BL2000 and BL2020) or 10 bits (models BL2010 and BL2030). Eleven of the 14 channels
are available externally, and three are used internally for the reference voltages: 4.096 V
(Vref), 2.048 V (Vref/2), and Analog Ground. These internal voltages can be used to check
the functioning of the A/D converter.
The A/D converter only measures voltages between 0 V and the applied reference voltage.
Therefore, each external input has circuitry that provides scaling and buffering. The first
four external inputs are scaled and buffered to provide the user with an input impedance of
1 MΩ and a range of -10.24 V to +10.24 V. The remaining five or seven inputs are not
buffered, but are scaled to provide inputs that can range from 0 V to +49 V.
Figure 17 shows the buffered A/D converter inputs.
100 pF
100 pF
+V
200 kW
ADC0
ADC1
R IN
1 MW
To ADC
AGND
Figure 17. Buffered A/D Converter Inputs
The op-amp is powered from the +V supply. The 1 MΩ and 200 kΩ resistors set the gain
(scale factor), which is 0.2 in this case. This results in a dynamic input range of 4.096 V ÷
0.2 or 20.48 V. The center point of this range is set by the 1.707 V reference voltage. With
the reference set to 1.707 V, the center point is at 0 V and the input voltage can range from
-10.24 V to +10.24 V. To maintain the best accuracy, the input range should be limited to
-10.0 V to +10.0 V.
The five or seven unbuffered inputs have an impedance of 12 kΩ and a scale factor of
0.0833, which provides for an input voltage range of 0 V to 49.15 V. Accuracy is maintained over the specified voltage range from 0 V to 48 V DC.
The analog inputs can also be used as digital inputs when required. In this case a lower
quality 10-bit D/A converter can be used, and the software would assign a 1 or 0 to a voltage based on whether it is above or below a particular threshold. See the digIn function
description for more information.
User’s Manual
27
3.6 D/A Converter Outputs
Figure 18 shows the analog voltage reference circuit.
+V
100 W
DAC_PWR
14 kW
100 nF
4.096 V
ref diode
4.096_VREF
JP3
3 2 1
+V
453 W
1.707_VREF
10 kW
100 nF
Figure 18. Analog Reference Voltages
This circuit generates the 4.096 V reference voltage, which is used by the A/D converter
and optionally by the two D/A converters. This sets the operating range of the A/D converter and the D/A converters (0–4.096 V). To use the full accuracy of the A/D converter
and the D/A converters, this voltage must be accurate to the same degree.
Under normal operation, the 453 Ω resistor is not installed. The reference zener diode in
combination with the 100 Ω resistor form a shunt regulator. The 4.096 V reference voltage
then feeds the A/D converter, the D/A converters, and the voltage divider composed of the
10 kΩ and the 14 kΩ resistors. The voltage divider generates a second reference voltage of
1.707 V to feed the four op-amps for the buffered A/D converter inputs.
The reference voltage can be ratiometric rather than absolute. This is done by removing
the zener diode and installing the 453 Ω resistor. With this arrangement, the reference
voltages follow changes in the power supply voltages Vcc and V+, which is a filtered version of Vcc. This type of measurement circuit is preferred by some customers whose sensors are powered from the Vcc supply and hence the outputs track Vcc.
A jumper on header JP3 allows the D/A converters to be powered either from the 4.096 V
reference (factory default) or from the analog supply +V. The D/A converters use their
power source also as the reference input, so normally powering the D/A converters from
the more accurate 4.096 V reference is best. However, should a customer desire more
dynamic range (0–5 V rather than 0–4.096 V), the jumper across JP3 can be set to power
the D/A converters from +V. When powered from the +V supply, the outputs of the D/A
converters will always be ratiometric, independent of whether the zener diode is installed.
28
Wildcat (BL2000)
Only the BL2000 and the BL2020 models are stuffed with D/A converters. The D/A converters provide only a voltage output. This means that in order to maintain the maximum
accuracy of the D/A converters, only a small amount of current should be drawn from the
D/A converter output (of the order of µA).
With D/A converters installed, the user has the option of using an unbuffered A/D converter input to read the output of a D/A converter or one of the two fixed voltages +V or
Vcc. The standard BL2000 configuration is for A/D converter channels 9 and 10 to monitor D/A converter channels 0 and 1 respectively.
Figure 19 shows the D/A converter outputs with buffer amplifiers, which may be used to
increase the D/A converter output voltage range to 0 V to +10 V.
ADC
11 kW
DAC0
10 nF
1 kW
AIN9
DAC0
DAC1
+
–
+
AGND
–
Figure 19. D/A Converter Outputs
User’s Manual
29
3.7 Memory
Section A.3, “Jumper Configurations,” shows where the 0 Ω surface-mounted “jumpers”
described in this section are found.
3.7.1 SRAM
The BL2000 is designed to accept 128K to 512K of SRAM packaged in an SOIC case.
The standard models come with 128K of SRAM. Table 3 lists the jumper settings for the
jumpers used to set the SRAM size. The “jumpers” are 0 Ω surface-mounted resistors.
Table 3. Memory Jumper Selections
SRAM (JP5)
Flash Memory (JP4)
1–2
128K
1–2
128K/256K
2–3
512K
2–3
512K
3.7.2 Flash Memory
The BL2000 is also designed to accept 128K to 512K of flash memory packaged in a
TSOP case.
The BL2000 comes with one 256K flash memory. Table 3 lists the jumper settings for the
jumpers used to set the SRAM size. The “jumpers” are 0 Ω surface-mounted resistors.
NOTE: Rabbit recommends that any customer applications should not be constrained by
the sector size of the flash memory since it may be necessary to change the sector size
in the future.
A Flash Memory Bank Select jumper configuration option exists at JP2 with 0 Ω surfacemounted resistors. This option, used in conjunction with some configuration macros,
allows Dynamic C to compile two different co-resident programs for the upper and lower
halves of the 256K flash in such a way that both programs start at logical address 0000.
This is useful for applications that require a resident download manager and a separate
downloaded program. See Technical Note 218, Implementing a Serial Download Manager for a 256K Flash, for details.
30
Wildcat (BL2000)
3.8 Programming Cable
The programming cable is used to connect the BL2000’s programming port to a PC serial
COM port. The programming cable converts the RS-232 voltage levels used by the PC
serial port to the TTL voltage levels used by the Rabbit 2000.
When the PROG connector on the programming cable is connected to the BL2000’s
programming header, programs can be downloaded and debugged over the serial interface.
The DIAG connector of the programming cable may be used on the BL2000’s programming
header with the BL2000 operating in the Run Mode. This allows the programming port to
be used as a regular serial port.
3.8.1 Changing Between Program Mode and Run Mode
The BL2000 is automatically in Program Mode when the PROG connector on the programming cable is attached to the BL2000, and is automatically in Run Mode when no
programming cable is attached. When the Rabbit 2000 is reset, the operating mode is
determined by the status of the SMODE pins. When the programming cable’s PROG
connector is attached, the SMODE pins are pulled high, placing the Rabbit 2000 in the
Program Mode. When the programming cable’s PROG connector is not attached, the
SMODE pins are pulled low, causing the Rabbit 2000 to operate in the Run Mode.
Program Mode
To
PC COM port
Red
shrink wrap
Run Mode
Programming Cable
Colored edge
GND RESET
PIN
DIAG
PWR
LNK
PWR
LNK
ACT
ACT
OUT 0
OUT 1
OUT 2
OUT 3
Battery
+
+
+
+
OUT 0
BAD
BAD
C44
GND
C45
C46
C47
C48
GND
C49
GND
C50
C51
GN D
C52
Q6
DS8
C37 C42
GND
+
DS7
NC
+
Q5
DS6
COM
DS5
NO
DS4
OUT0 OUT1 OUT2 OUT3 OUT4 OUT5 OUT6 OUT7
GND
10
IN10 OUT8 OUT9 GND
BT1
G
C32
R41 R42 R43 R44 R45 R46 R47 R48 R49
D4 D5 D6 D7 D8 D9 D10 D11 D12
C43
DS3
IN9
K1
Q4
D
Q3
1
IN8
R29
C26
DS2
IN7
GND
3
1 2
DS1
IN6
4
R21
Q1
R26
R25
IN5
GN D
C77
6
IN4
GND
R33
R22
C21
Y1
R32
R34
R35
R40
D3
C9
C12
5
IN3
GND
GND
C31 R31
L1
J7
POWER IN
GND
J11
J9
IN2
3
C76
R152
J12
R14
R18
R24
GND
AGND
C5 C7
U3
R23
C14
GND
AGND
R3
C15
C52
C78
15
C51
GN D
2
JP2
U5
40
C50
AG ND
R2
R17
C13
90
GND
AGND
C75 R5 C79
65
C49
4
C35 R38 R52 C40 R56 R60
C48
GND
AGND
U6
C36 R39 R53 C41 R57 R61
C47
1
C33 R36 R50 C38 R54 R58
C46
Q2
R30
C34 R37 R51 C39 R55 R59
C45
C19
Y2
C29
D2
C2C3 AGND
C8 U2
R153 R154 U1
C18
U4
C25
C28
DS8
C37 C42
GND
J8
J10
C80 R130
R16
R15
R19
C24
Power
AGND DAC1 DAC0 ADC8 ADC7 ADC6 ADC5 ADC4 ADC3 ADC2 ADC1 ADC0
C4 R7
Y3
C23
D1
GND
C11
R11
R10
R157
JP1
DS7
C44
Q6
R13C1
R9
J5
C16
TVS1
DS6
+
Q5
GND
C17
J6
J4
J3
485+ RXD2 TXD2 RXD1 TXD1
R8
R151
DS5
GND
DS4
+
485-
GN D
C22 R27 R28 C27
10
BT1
G
C32
R41 R42 R43 R44 R45 R46 R47 R48 R49
D4 D5 D6 D7 D8 D9 D10 D11 D12
C43
DS3
1
D
IN0
R20
C20
DS2
R26
R25
6
K1
Q4
IN1
GND
C10R12
DS1
R21
RST-
R4
R6
C12
R29
Q3
GND
R14
5
GND
3
+K
R1
C9
Q1
R24
GN D
C77
1 2
15
GND
40
GND
C35 R38 R52 C40 R56 R60
GND
C36 R39 R53 C41 R57 R61
C33 R36 R50 C38 R54 R58
J7
POWER IN
4
R32
R34
R35
R40
D3
R33
R22
C21
C26
U6
C31 R31
L1
C34 R37 R51 C39 R55 R59
3
C76
R152
Y1
90
Q2
R30
C13
JP2
U5
GND
J12
C5 C7
R18
65
U4
R151
TVS1
2
R3
J1
J2
AGND
U3
R23
C14
C19
Y2
C29
4
C78
R17
R153 R154 U1
C18
C22 R27 R28 C27
C24
1
R2
AGND
C15
Y3
D2
C75 R5 C79
AG ND
C11
R11
R10
R157
JP1
C80 R130
R16
R15
R19
C16
C25
C28
AGND
R8
C17
Power
U2
AGND
C4 R7
C10R12
C23
D1
C2C3
C8
AGND
OUT 1
R13C1
R9
+RAW GND
AGND DAC1 DAC0 ADC8 ADC7 ADC6 ADC5 ADC4 ADC3 ADC2 ADC1 ADC0
OUT 2
J5
GND
OUT 3
GND
PROG
R20
C20
J6
J4
J3
485+ RXD2 TXD2 RXD1 TXD1
Battery
R4
R6
R1
485-
GN D
S
IN0
S
IN1
GND
+
RST-
+
GND
C85
GND
+K
C85
+RAW GND
J1
J2
GND
GND
GND
J8
J10
J11
J9
IN2
IN3
IN4
IN5
IN6
IN7
IN8
IN9
IN10 OUT8 OUT9 GND
OUT0 OUT1 OUT2 OUT3 OUT4 OUT5 OUT6 OUT7
NO
COM
NC
GND
RESET BL2000 when changing mode:
Short out RESET pin on header J2 to ground, OR
Cycle power off/on
after removing or attaching programming cable.
Figure 20. BL2000 Program Mode and Run Mode Setup
A program “runs” in either mode, but can only be downloaded and debugged when the
Jackrabbit is in the Program Mode.
Refer to the Rabbit 2000 Microprocessor User’s Manual for more information on the programming port and the programming cable.
User’s Manual
31
3.9 Other Hardware
3.9.1 External Interrupts
BL2000 boards with a Rabbit 2000 microprocessor labeled IQ3T or higher have external
interrupts available on digital inputs IN2 and IN3. Older BL2000 boards (Rabbit 2000
microprocessors labeled IQ2T) have one external interrupt available—see Technical Note
TN301, Rabbit 2000 Microprocessor Interrupt Problem, for further information on how
to use this interrupt on the older boards.
3.9.2 Clock Doubler
The BL2000 takes advantage of the Rabbit 2000 microprocessor’s internal clock doubler.
A built-in clock doubler allows half-frequency crystals to be used to reduce radiated emissions. The 22.1 MHz frequency is generated using an 11.0592 MHz crystal. The clock
doubler is disabled automatically in the BIOS for crystals with a frequency above
12.9 MHz.
The clock doubler may be disabled if 22.1 MHz clock speeds are not required. Disabling
the Rabbit 2000 microprocessor’s internal clock doubler will reduce power consumption
and further reduce radiated emissions. The clock doubler is disabled with a simple configuration macro as shown below.
1. Select the “Defines” tab from the Dynamic C Options > Project Options menu.
2. Add the line CLOCK_DOUBLED=0 to always disable the clock doubler.
The clock doubler is enabled by default, and usually no entry is needed. If you need to
specify that the clock doubler is always enabled, add the line CLOCK_DOUBLED=1 to
always enable the clock doubler. The clock speed will be doubled as long as the crystal
frequency is less than or equal to 26.7264 MHz.
3. Click OK to save the macro. The clock doubler will now remain off whenever you are
in the project file where you defined the macro.
32
Wildcat (BL2000)
3.9.3 Spectrum Spreader
BL2000 boards that carry the CE mark have a Rabbit 2000 microprocessor that features a
spectrum spreader, which helps to mitigate EMI problems. By default, the spectrum
spreader is on automatically for BL2000 boards that carry the CE mark when used with
Dynamic C 7.32 or later versions, but the spectrum spreader may also be turned off or set
to a stronger setting. The means for doing so is through a simple configuration macro as
shown below.
1. Select the “Defines” tab from the Dynamic C Options > Project Options menu.
2. Normal spreading is the default, and usually no entry is needed. If you need to specify
normal spreading, add the line
ENABLE_SPREADER=1
For strong spreading, add the line
ENABLE_SPREADER=2
To disable the spectrum spreader, add the line
ENABLE_SPREADER=0
NOTE: The strong spectrum-spreading setting is unnecessary for the BL2000.
3. Click OK to save the macro. The spectrum spreader will now remain off whenever you
are in the project file where you defined the macro.
There is no spectrum spreader functionality for BL2000 boards that do not carry the CE
mark or when using any BL2000 with a version of Dynamic C prior to 7.30.
User’s Manual
33
34
Wildcat (BL2000)
4. SOFTWARE
Dynamic C is an integrated development system for writing
embedded software. It runs on an IBM-compatible PC and is
designed for use with Rabbit-based single-board computers and
other devices based on the Rabbit microprocessor.
Chapter 4 provides the libraries, function calls, and sample programs related to the BL2000.
4.1 An Overview of Dynamic C
Dynamic C has been in use worldwide since 1989. It is specially designed for programming embedded systems, and features quick compile and interactive debugging. A complete reference guide to Dynamic C is contained in the Dynamic C User’s Manual.
You have a choice of doing your software development in the flash memory or in the data
SRAM included on the Jackrabbit. The flash memory and SRAM options are selected
with the Options > Project Options > Compiler menu.
The advantage of working in RAM is to save wear on the flash memory, which is limited
to about 100,000 write cycles. The disadvantage is that the code and data might not both
fit in RAM.
NOTE: An application can be developed in RAM, but cannot run standalone from RAM
after the programming cable is disconnected. All standalone applications can only run
from flash memory.
NOTE: Do not depend on the flash memory sector size or type. Due to the volatility of
the flash memory market, the Jackrabbit and Dynamic C were designed to accommodate flash devices with various sector sizes.
Developing software with Dynamic C is simple. Users can write, compile, and test C and
assembly code without leaving the Dynamic C development environment. Debugging
occurs while the application runs on the target. Alternatively, users can compile a program
to an image file for later loading. Dynamic C runs on PCs under Windows 95 and later.
Programs can be downloaded at baud rates of up to 460,800 bps after the program
compiles.
User’s Manual
35
Dynamic C has a number of standard features:
• Full-feature source and/or assembly-level debugger, no in-circuit emulator required.
• Royalty-free TCP/IP stack with source code and most common protocols.
• Hundreds of functions in source-code libraries and sample programs:
X Exceptionally fast support for floating-point arithmetic and transcendental functions.
X RS-232 and RS-485 serial communication.
X Analog and digital I/O drivers.
X I2C, SPI, GPS, file system.
X LCD display and keypad drivers.
• Powerful language extensions for cooperative or preemptive multitasking
• Loader utility program to load binary images into Rabbit-based targets in the absence
of Dynamic C.
• Provision for customers to create their own source code libraries and augment on-line
help by creating “function description” block comments using a special format for
library functions.
• Standard debugging features:
X Breakpoints—Set breakpoints that can disable interrupts.
X Single-stepping—Step into or over functions at a source or machine code level, µC/OS-II aware.
X Code disassembly—The disassembly window displays addresses, opcodes, mnemonics, and
machine cycle times. Switch between debugging at machine-code level and source-code level by
simply opening or closing the disassembly window.
X Watch expressions—Watch expressions are compiled when defined, so complex expressions
including function calls may be placed into watch expressions. Watch expressions can be updated
with or without stopping program execution.
X Register window—All processor registers and flags are displayed. The contents of general registers
may be modified in the window by the user.
X Stack window—shows the contents of the top of the stack.
X Hex memory dump—displays the contents of memory at any address.
X STDIO window—printf outputs to this window and keyboard input on the host PC can be
detected for debugging purposes. printf output may also be sent to a serial port or file.
36
Wildcat (BL2000)
4.1.1 Upgrading Dynamic C
4.1.1.1 Patches and Bug Fixes
Dynamic C patches that focus on bug fixes are available from time to time. Check the Web
site www.rabbit.com/support/ for the latest patches, workarounds, and bug fixes.
The default installation of a patch or bug fix is to install the file in a directory (folder) different from that of the original Dynamic C installation. Rabbit recommends using a different directory so that you can verify the operation of the patch without overwriting the
existing Dynamic C installation. If you have made any changes to the BIOS or to libraries,
or if you have programs in the old directory (folder), make these same changes to the
BIOS or libraries in the new directory containing the patch. Do not simply copy over an
entire file since you may overwrite a bug fix; of course, you may copy over any programs
you have written. Once you are sure the new patch works entirely to your satisfaction, you
may retire the existing installation, but keep it available to handle legacy applications.
4.1.1.2 Upgrades
Dynamic C installations are designed for use with the board they are included with, and
are included at no charge as part of our low-cost kits. Dynamic C is a complete software
development system, but does not include all the Dynamic C features. Rabbit also offers
add-on Dynamic C modules containing the popular µC/OS-II real-time operating system,
as well as PPP, Advanced Encryption Standard (AES), and other select libraries. In addition to the Web-based technical support included at no extra charge, a one-year telephonebased technical support module is also available for purchase.
User’s Manual
37
4.2 Sample Programs
Sample programs are provided in the Dynamic C SAMPLES folder. The sample program
PONG.C demonstrates the output to the STDIO window. The various directories in the
SAMPLES folder contain specific sample programs that illustrate the use of the corresponding Dynamic C libraries.
The SAMPLES\BL2000 folder provides sample programs specific to the BL2000. Each
sample program has comments that describe the purpose and function of the program. Follow the instructions at the beginning of the sample program.
To run a sample program, open it with the File menu (if it is not still open), compile it using
the Compile menu, and then run it by selecting Run in the Run menu. The BL2000 must
be in Program mode (see Section 3.8, “Programming Cable,”) and must be connected to a
PC using the programming cable as described in Section 2.1, “BL2000 Connections.”
More complete information on Dynamic C is provided in the Dynamic C User’s Manual.
4.2.1 General BL2000 Sample Programs
• BOARD_ID.C—This program is used to identify the model of BL2000 being used, and
displays that information in the STDIO window.
• COUNTLEDS.C—This program will count from 0 to 31 in binary, using the four general-purpose LEDs, DS4–DS7, and the Processor Bad LED, DS8. The LEDs are used
in reverse logical order to minimize the cycling of the relay, which is slaved to the same
output as DS4.
• LEDS_4.C—This program creates four “devices” (lights), and four buttons to toggle
them. Users can view the devices with their Web browser, and change the status of the
lights. If the Demonstration Board is connected to the BL2000, the lights on the Demonstration Board will match the ones on the Web page. See Appendix D for hookup
instructions for the Demonstration Board.
4.2.2 Digital I/O
The following sample programs are found in the IO subdirectory in SAMPLES/BL2000.
• ANADIGIN.C—Demonstrates using the A/D converter channels as digital inputs. You
will be able to see an input channel toggle HIGH and LOW when pressing the pushbuttons on the Demonstration Board. See Appendix D for hookup instructions for the
Demonstration Board.
• DIGIN.C—Demonstrates the use of the digital inputs. Using the Demonstration Board,
you can see an input channel toggle from HIGH to LOW when pressing a pushbutton
on the Demonstration Board. See Appendix D for hookup instructions for the Demonstration Board.
• DIGOUT.C—Demonstrates the use of the high-current outputs. Using the Demonstration Board, you can see an LED toggle on/off via a high-current output. See Appendix
D for hookup instructions for the Demonstration Board.
• LED.C—Demonstrates how to toggle the output LEDs on the BL2000 on/off.
38
Wildcat (BL2000)
• PWM.C—Demonstrates the use of Timer B to generate a PWM signal on digital output
OUT8. The program generates a 42 Hz PWM signal with the duty cycle adjustable
from 1 to 99%.
• RELAY.C—Demonstrates how to control the relay on the BL2000.
4.2.3 Serial Communication
The following sample programs are found in the RS232 subdirectory in SAMPLES/BL2000.
• PUTS.C—Transmits and then receives an ASCII string on Serial Ports B and C. It also
displays the serial data received from both ports in the STDIO window.
• RELAYCHR.C—This program echoes characters over Serial Port B to Serial Port C. It
must be run with a serial utility such as Hyperterminal.
The following sample programs are found in the RS485 subdirectory in SAMPLES/BL2000.
• MASTER.C—This program demonstrates a simple RS-485 transmission of lower case
letters to a slave BL2000. The slave will send back converted upper case letters back to
the master BL2000 and display them in the STDIO window. Use SLAVE.C to program
the slave BL2000.
• SLAVE.C—This program demonstrates a simple RS-485 transmission of lower case
letters to a slave BL2000. The slave will send back converted upper case letters back to
the master BL2000 and display them in the STDIO window. Use MASTER.C to program
the master BL2000.
4.2.4 A/D Converter Inputs
The following sample programs are found in the ADC subdirectory in SAMPLES/BL2000.
• AD_CALIB.C—Demonstrates how to recalibrate an A/D converter channel using two
known voltages to generate two coefficients, gain and offset, which are rewritten into
the user block data area. The voltage that is being monitored is displayed continuously.
Note that this sample program will overwrite the calibration constants set at the factory.
• AD1.C—Demonstrates how to access the A/D internal test voltages in both the
TLC2543 and TLC1543 A/D converter chips. The program reads the A/D internal voltages and then uses the STDIO window to display the RAW data.
• AD2.C—Demonstrates how to access the A/D channels using the anaInVolt function.
The program uses the STDIO window to display the voltage that is being monitored.
• AD3.C—Demonstrates how to access the A/D converter channels with the low-level
A/D driver. The program uses the STDIO window to display the voltage that is being
monitored on all the A/D channels using the low-level A/D driver.
• AD4.C—Demonstrates how to use the A/D converter channels with the low-level A/D
driver. The program uses the STDIO window to display the voltage (average of 10 samples) that is being monitored on all the A/D converter channels using the low-level A/D
driver.
User’s Manual
39
4.2.5 D/A Converter Outputs
The following sample programs are found in the DAC subdirectory in SAMPLES/BL2000.
• DACAL.C—This program demonstrates how to recalibrate an D/A converter channel
using two known voltages, and defines the two coefficients, gain and offset, that will be
rewritten into the D/A converter's EEPROM simulated in flash memory. Note that this
sample program will overwrite the calibration constants set at the factory.
• DAOUT1.C—This program outputs a voltage that can be read with a voltmeter. The output voltage is computed using the calibration constants that are read from the EEPROM
simulated in flash memory.
• DAOUT2.C—This program demonstrates the use of both the D/A and the A/D converters. The user selects both the D/A converter and A/D channel to be used, then sets the
D/A converter output voltage to be read by the A/D channel. All activity will be displayed in the STDIO window.
4.2.6 Real-Time Clock
If you plan to use the real-time clock functionality in your application, you will need to set
the real-time clock. You may set the real-time clock using the SETRTCKB.C sample program from the Dynamic C SAMPLES\RTCLOCK folder. The RTC_TEST.C sample program in the Dynamic C SAMPLES\RTCLOCK folder provides additional examples of how
to read and set the real-time clock
4.2.7 TCP/IP Sample Programs
TCP/IP sample programs are described in Chapter 5.
40
Wildcat (BL2000)
4.3 BL2000 Libraries
Two library directories are used to develop applications for the BL2000.
• BL2000-—libraries associated with features specific to the BL2000.
• TCPIP—libraries specific to using TCP/IP functions on the BL2000.
Other generic functions applicable to all devices based on the Rabbit 2000 microprocessor
are described in the Dynamic C Function Reference Manual.
User’s Manual
41
4.4 BL2000 Function Calls
4.4.1 Board Initialization
void brdInit (void);
Call this function at the beginning of your program. This function initializes the system I/O ports and
loads all the A/D and DAC calibration constants from flash memory into SRAM for use by your program.
The ports are initialized as follows:
42
Function
Output Function
State
Port
I/O
PA0
Output
OUT0/RELAY/LED_DS4
PA1
Output
OUT1/LED_DS5
PA2
Output
OUT2/LED_DS6
PA3
Output
OUT3/LED_DS7
PA4
Output
OUT4
PA5
Output
OUT5
PA6
Output
OUT6
PA7
Output
OUT7
PB0
Input
IN6
N/A
PB1
Input
CLKA
N/A
PB2
Input
IN7
N/A
PB3
Input
IN8
N/A
PB4
Input
IN9
N/A
PB5
Input
IN10
N/A
PB6
Output
RS485_EN
Off
PB7
Output
UPGOOD
Bad Indicator Off
PC0
Output
TXD RS-485
Inactive high
PC1
Input
RXD RS-485
N/A
High-Current Driver
Off
High-Current Driver
Off
High-Current Driver
Off
High-Current Driver
Off
High-Current Driver
Off
High-Current Driver
Off
High-Current Driver
Off
High-Current Driver
Off
Wildcat (BL2000)
Function
Output Function
State
Port
I/O
PC2
Output
RTS/TXC RS-232
Inactive high
PC3
Input
CTS/RXC RS-232
N/A
PC4
Output
TXB RS-232
Inactive high
PC5
Input
RXB RS-232
N/A
PC6
Output
TXA Programming Port
Inactive high
PC7
Input
RXA Programming Port
N/A
PD0
Output
DAC-ADC_SK
On
PD1
Output
DAC-ADC_SDI
On
PD2
Input
RTL-ADC_SDO
N/A
PD3
Input
RTL_SK
N/A*
PD4
Output
RTL_SDI
On
PD5
Output
DAC0_CS
Inactive high
PD6
Output
DAC1_CS
Inactive high
PD7
Output
ADC_CS
Inactive high
PE0
Output
OUT8
PE1
Output
OUT9
PE2
Input
IN0
N/A
PE3
Input
IN1
N/A
PE4
Input
IN2
N/A
PE5
Input
IN3
N/A
PE6
Input
IN4
N/A
PE7
Input
IN5
N/A
High-Current Driver
Off
High-Current Driver
Off
* PD3 is an output (and is on) for the BL2020 and the BL2030.
SEE ALSO
digOut, digIn, serMode
User’s Manual
43
4.4.2 Digital I/O
int digIn(int channel);
Reads the state of an input channel:
IN0–IN10—standard digital inputs, ± 36 V DC
IN11–IN14—pseudo digital inputs using A/D converter inputs ADC0–ADC3, ± 10 V DC
IN15–IN19—pseudo digital inputs using A/D converter inputs ADC4–ADC8, 0 V to 48 V DC
IN20–IN21—pseudo digital inputs using A/D converter inputs DAC0–DAC1, 0 V to 48 V DC
(BL2010 and BL2030)
The threshold is fixed at 2.40 V for channels IN0–IN10. Anything below 2.40 V is a logic 0, and anything higher than or equal to 2.40 V is a logic 1.
The default threshold for channels IN11–IN21 is also set to 2.40 V. The threshold for these channels may
be changed by adding the following two lines to your program.
#undef
#define
THRESHOLD
THRESHOLD xx.xx
where xx.xx is the desired threshold voltage. Anything below the threshold value is a logic 0, and anything higher than or equal to the threshold value is a logic 1.
PARAMETER
channel is the input channel number (0–21)
RETURN VALUE
The state of the input (0 or 1).
SEE ALSO
brdInit, digOut
void digOut(int channel, int value);
Sets the state of a digital output (OUT0–OUT9).
The default setting for the function is for current-sinking outputs. To change from sinking to sourcing
outputs, add the following two lines at the beginning of your program.
#undef
#define
OUTPUT_DRIVE
OUTPUT_DRIVE
SOURCING
The relay is driven by PA0, which is the same Rabbit 2000 parallel port that drives OUT0 and LED DS4.
OUT0 therefore works in parallel with the relay output. Rabbit therefore recommends that you do not use
OUT0 for a digital output when you are using the relay.
PARAMETERS
channel is the output channel number (0–9).
value is the output value (0 or 1).
SEE ALSO
brdInit, digIn
44
Wildcat (BL2000)
4.4.3 Serial Communication
Library files included with Dynamic C provide a full range of serial communications support. The RS232.LIB library provides a set of circular-buffer-based serial functions. The
PACKET.LIB library provides packet-based serial functions where packets can be delimited by the 9th bit, by transmission gaps, or with user-defined special characters. Both
libraries provide blocking functions, which do not return until they are finished transmitting or receiving, and nonblocking functions, which must be called repeatedly until they
are finished. For more information, see the Dynamic C Function Reference Manual and
Technical Note 213, Rabbit Serial Port Software.
The following function calls are specific to the BL2000.
int serMode(int mode);
User interface to set up BL2000 serial communication lines. Call this function after serXOpen().
If Mode 1 is selected, CTS/RTS flow control is exercised using the serCflowcontrolOn() and
serCflowcontrolOff() functions from the RS232.LIB library.
PARAMETER
mode is the defined serial port configuration.
Serial Port
Mode
B
C
D
0
RS-232, 3-wire
RS-232, 3-wire
RS-485
1
RS-232, 5-wire
CTS/RTS
RS-485
RETURN VALUE
0 if valid mode, 1 if not.
SEE ALSO
ser485Tx, ser485Rx
void ser485Tx(void);
Sets (high) pin 3 (DE) to enable Tx.
SEE ALSO
serMode, ser485Rx
void ser485Rx(void);
Resets (low) pin 3 (DE) to disable Tx.
SEE ALSO
serMode, ser485Tx
User’s Manual
45
4.4.4 Relay and LED Outputs
void relayOut(int relay, int value);
Sets the state of a relay.
The relay is driven by PA0, which is the same Rabbit 2000 parallel port that drives OUT0 and LED DS4.
OUT0 therefore works in parallel with the relay output. Rabbit therefore recommends that you do not use
OUT0 for a digital output when you are using the relay.
PARAMETERS
relay is the relay to control, 0 = Relay 0.
value is the value used to connect the relay common contact to one of the following contacts:
0 = relay common connected to relay normally closed contact
1 = relay common connected to relay normally open contact
SEE ALSO
brdInit
void ledOut(int led, int value);
LED ON/OFF control.
The relay is driven by PA0, which is the same Rabbit 2000 parallel port that drives OUT0 and LED0.
OUT0 therefore works in parallel with the relay output. Rabbit therefore recommends that you do not use
OUT0 for a digital output when you are using the relay. The relay and OUT0 are also turned on when
LED0 is turned on.
PARAMETERS
led is the LED to control:
0
1
2
3
4
= OUT0 LED
= OUT1 LED
= OUT2 LED
= OUT3 LED
= BAD indicator
value is the value used to control the LED:
0 = OFF
1 = ON
SEE ALSO
brdInit
46
Wildcat (BL2000)
4.4.5 A/D Converter Inputs
void anaInCalib(int channel, int value1,
float volts1, int value2, float volts2);
Calibrates the response of the A/D converter channel as a linear function using the two conversion points
provided. Gain and offset constants are calculated and placed into global table _adcInCalib.
PARAMETERS
channel is the A/D converter input channel (0–10).
value1 is the first A/D converter channel value.
volts1 is the voltage corresponding to the first A/D converter channel value.
value2 is the second A/D converter channel value.
volts2 is the voltage corresponding to the second A/D converter channel value.
RETURN VALUE
0 if successful.
-1 if not able to make calibration constants.
SEE ALSO
anaIn, anaInVolts, brdInit
int _anaIn(unsigned char cmd, char len);
Reads the voltage of an analog input channel by serially clocking out an 8-bit command to the A/D converter device of the following formats:
TLC2543 commands
D7–D4
Channel 0 - 10
Channel 11 = (Vref+ - Vref-)/2
Channel 12 = VrefChannel 13 = Vref+
Channel 14 = software powerdown
D3-D2
Output data length:
01—8 bits
00—12 bits (normally used as default)
11—16 bits (not supported by driver)
D1
Output data format
0—MSB first
1—LSB first (not supported by driver)
D0
Mode of operation
0—Unipolar (normally used as default)
1—Bipolar
User’s Manual
47
TLC1543 commands (the TLC1543 is a 10-bit A/D converter)
D7–D4
Channel 0 - 10
Channel 11 = (Vref+ - Vref-)/2
Channel 12 = VrefChannel 13 = Vref+
(No software power-down mode available)
D3–D0
No specific values assigned.
PARAMETERS
cmd is the A/D converter input channel (0–10) to read.
len is the output data length:
0 = 12-bit mode (BL2000/BL2020 only)
1 = 8-bit mode (BL2000/BL2020 only)
2 = 10-bit mode (BL2010/BL2030 only)
RETURN VALUE
A value corresponding to the voltage on the A/D converter input channel, which will be:
0–4095 for 12-bit A/D conversions
0–1023 for 10-bit A/D conversions
0–255 for 8-bit A/D conversions
SEE ALSO
anaIn, anaInVolts, brdInit, samples/bl2000/adc/AD3.C
int anaIn(unsigned int channel);
Reads the state of an A/D converter input channel.
PARAMETER
channel is the A/D converter input channel (0–10) to read.
RETURN VALUE
A value corresponding to the voltage on the analog input channel, which will be:
0–4095 for 12-bit A/D conversions (BL2000,BL2020)
0–1023 for 10-bit A/D conversions (BL2010,BL2030).
SEE ALSO
anaInVolts, anaInCalib, _anaIn, brdInit
48
Wildcat (BL2000)
float anaInVolts(unsigned int channel);
Reads the state of an A/D converter input channel and uses the previously set calibration constants to
convert it to volts.
PARAMETER
channel is the A/D converter input channel (0–10).
RETURN VALUE
A voltage value corresponding to the voltage on the analog input channel.
SEE ALSO
anaIn, anaInCalib, brdInit
int anaInEERd(unsigned int channel);
Reads the calibration constants, gain, and offset from the simulated EEPROM in flash memory (located
in reserved user block memory area 0x1C00–0x1FFF).
PARAMETER
channel is the A/D converter input channel (0–10).
RETURN VALUE
0 if successful.
-1 if address or range is invalid.
SEE ALSO
anaInEEWr, brdInit
int anaInEEWr(unsigned int channel);
Writes the calibration constants, gain, and offset to the simulated EEPROM in flash memory (located in
reserved user block memory area 0x1C00–0x1FFF).
PARAMETER
channel is the A/D converter input channel (0–10).
RETURN VALUE
0 if successful.
-1 if address or range is invalid.
SEE ALSO
anaInEERd,
brdInit
The address range of the user block memory area where the calibration constants are
stored may be determined using
readUserBlock( _adcCalib, ADC_CALIB_ADDR, sizeof( _adcCalib ) );
where _adcCalib and ADC_CALIB_ADDR are macros defined in the BL20XX.LIB
library.
User’s Manual
49
4.4.6 D/A Converter Outputs
The functions in this section apply only to the BL2000 and the BL2020 models.
int anaOutCalib(int channel, int value1,
float volts1, int value2, float volts2);
Calibrates the response of the D/A converter channel desired as a linear function using the two conversion points provided. Gain and offset constants are calculated and placed into global table _dacCalib.
PARAMETERS
channel is the D/A converter output channel (0 or 1).
value1 is the first D/A converter value.
volts1 is the voltage corresponding to the first D/A converter value.
value2 is the second D/A converter value.
volts2 is the voltage corresponding to the second D/A converter value.
RETURN VALUE
0 if sucessful.
-1 if not able to make calibration constants.
SEE ALSO
anaOut, anaOutVolts, brdInit
50
Wildcat (BL2000)
void anaOut(unsigned int channel, unsigned int
modecount);
Sets the voltage of a D/A converter output channel by serially clocking in 16 bits to a D/A converter
using the following format:
D15–D14
Doesn’t matter.
D13–D12
Mode of operation
00—Normal Operation
01—Software Powerdown, 1 kΩ to GND
10—Software Powerdown, 100 kΩ to GND
11—Software Powerdown, three-state
D11–D0
Data bits, MSB–LSB (0–4095)
PARAMETERS
channel is the D/A converter output channel to write (0 or 1).
modecount is a value corresponding to the voltage on the D/A converter output and/or setting the
mode of operation
:
Operation
Mode
Description
modecount Value
0
Normal Mode
0–4095
1
Software Powerdown, 1 kΩ to GND
0x1000
2
Software Powerdown, 100 kΩ to GND
0x2000
3
Software Powerdown, three-state
0x3000
RETURN VALUE
None
SEE ALSO
anaOutVolts, anaOutCalib, brdInit
User’s Manual
51
void anaOutVolts(unsigned int channel,
float voltage);
Sets the voltage of a D/A converter output channel by using the previously set calibration constants to
calculate the correct data values.
PARAMETERS
channel is the D/A converter output channel (0 or 1).
voltage is the voltage desired on the output channel.
SEE ALSO
anaOut, anaOutCalib, brdInit
int anaOutEERd(unsigned int channel);
Reads the calibration constants, gain, and offset from the simulated EEPROM in flash memory (located
in reserved user block memory area 0x1C00–0x1FFF).
PARAMETER
channel is the D/A converter output channel (0 or 1).
RETURN VALUE
0 if successful.
-1 if address or range is invalid.
SEE ALSO
anaOutEEWr, brdInit
int anaOutEEWr(unsigned int channel);
Writes the calibration constants, gain, and offset to the simulated EEPROM in flash memory (located in
reserved user block memory area 0x1C00–0x1FFF).
PARAMETER
channel is the D/A converter output channel (0 or 1).
RETURN VALUE
0 if successful.
-1 if address or range is invalid.
SEE ALSO
anaOutEERd, brdInit
The address range of the user block memory area where the calibration constants are
stored may be determined using
readUserBlock( _dacCalib, DAC_CALIB_ADDR, sizeof( _dacCalib ) );
where _dacCalib and DAC_CALIB_ADDR are macros defined in the BL20XX.LIB
library.
52
Wildcat (BL2000)
5. USING THE TCP/IP FEATURES
Chapter 5 provides an introduction to using the TCP/IP features
on your BL2000 board.
5.1 TCP/IP Connections
Before proceeding you will need to have the following items.
• If you don’t have Ethernet access, you will need at least a 10Base-T Ethernet card
(available from your favorite computer supplier) installed in a PC.
• Two RJ-45 straight through Ethernet cables and a hub, or an RJ-45 crossover Ethernet
cable.
The Ethernet cables and Ethernet hub are available from Rabbit in a TCP/IP tool kit. More
information is available at www.rabbit.com.
1. Connect the AC adapter and the programming cable as shown in Chapter 2, “Getting
Started.”
2. Ethernet Connections
If you do not have access to an Ethernet network, use a crossover Ethernet cable to connect the BL2000 to a PC that at least has a 10Base-T Ethernet card.
If you have Ethernet access, use a straight through Ethernet cable to establish an Ethernet
connection to the BL2000 from an Ethernet hub. These connections are shown in Figure 21.
BL2000
Board
User’s PC
BL2000
Board
Ethernet
cables
Ethernet
crossover
cable
Direct Connection
(Network of 2 computers)
To additional
network
Hub
elements
Direct Connection Using a Hub
Figure 21. Ethernet Connections
User’s Manual
53
The PC running Dynamic C through the serial programming port on the BL2000 does not
need to be the PC with the Ethernet card.
3. Apply Power
Plug in the AC adapter. The BL2000 is now ready to be used.
NOTE: A hardware RESET is accomplished by unplugging the AC adapter, then plugging it back in, or by momentarily grounding the board reset input at pin 9 on screw terminal header J2.
When working with the BL2000, the green LNK light is on when a program is running and
the board is properly connected either to an Ethernet hub or to an active Ethernet card. The
orange ACT light flashes each time a packet is received.
54
Wildcat (BL2000)
5.2 TCP/IP Sample Programs
We have provided a number of sample programs demonstrating various uses of TCP/IP for
networking embedded systems. These programs require that you connect your PC and the
BL2000 together on the same network. This network can be a local private network (preferred for initial experimentation and debugging), or a connection via the Internet.
5.2.1 How to Set IP Addresses in the Sample Programs
With the introduction of Dynamic C 7.30 we have taken steps to make it easier to run
many of our sample programs. Instead of the MY_IP_ADDRESS and other macros, you will
see a TCPCONFIG macro. This macro tells Dynamic C to select your configuration from a
list of default configurations. You will have three choices when you encounter a sample
program with the TCPCONFIG macro.
1. You can replace the TCPCONFIG macro with individual MY_IP_ADDRESS,
MY_NETMASK, MY_GATEWAY, and MY_NAMESERVER macros in each program.
2. You can leave TCPCONFIG at the usual default of 1, which will set the IP configurations
to 10.10.6.100, the netmask to 255.255.255.0, and the nameserver and gateway
to 10.10.6.1. If you would like to change the default values, for example, to use an IP
address of 10.1.1.2 for the BL2000 board, and 10.1.1.1 for your PC, you can edit
the values in the section that directly follows the “General Configuration” comment in
the TCP_CONFIG.LIB library. You will find this library in the LIB\TCPIP directory.
3. You can create a CUSTOM_CONFIG.LIB library and use a TCPCONFIG value greater
than 100. Instructions for doing this are at the beginning of the TCP_CONFIG.LIB file.
There are some other “standard” configurations for TCPCONFIG that let you select different features such as DHCP. Their values are documented at the top of the
TCP_CONFIG.LIB library. More information is available in the Dynamic C TCP/IP
User’s Manual.
IP Addresses Before Dynamic C 7.30
Most of the sample programs such as shown in the example below use macros to define the
IP address assigned to the board and the IP address of the gateway, if there is a gateway.
#define
#define
#define
#define
MY_IP_ADDRESS "10.10.6.170"
MY_NETMASK "255.255.255.0"
MY_GATEWAY "10.10.6.1"
MY_NAMESERVER "10.10.6.1"
In order to do a direct connection, the following IP addresses can be used for the BL2000:
#define MY_IP_ADDRESS "10.1.1.2"
#define MY_NETMASK "255.255.255.0"
// #define MY_GATEWAY "10.10.6.1"
// #define MY_NAMESERVER "10.10.6.1"
In this case, the gateway and nameserver are not used, and are commented out. The IP
address of the board is defined to be 10.1.1.2. The IP address of you PC can be defined
as 10.1.1.1.
User’s Manual
55
5.2.2 How to Set Up your Computer’s IP Address for a Direct Connection
When your computer is connected directly to the BL2000 via an Ethernet connection, you
need to assign an IP address to your computer. To assign the PC the address
10.10.6.101 with the netmask 255.255.255.0, do the following.
Click on Start > Settings > Control Panel to bring up the Control Panel, and then double-click the Network icon. Depending on which version of Windows you are using, look
for the TCP/IP Protocol/Network > Dial-Up Connections/Network line or tab. Doubleclick on this line or select Properties or Local Area Connection > Properties to bring
up the TCP/IP properties dialog box. You can edit the IP address and the subnet mask
directly. (Disable “obtain an IP address automatically.”) You may want to write down the
existing values in case you have to restore them later. It is not necessary to edit the gateway address since the gateway is not used with direct connect.
BL2000
Board
IP 10.10.6.101
Netmask
255.255.255.0
User’s PC
Ethernet
crossover
cable
Direct Connection PC to BL2000 Board
56
Wildcat (BL2000)
5.3 Run the PINGME.C Sample Program
Connect the crossover cable from your computer’s Ethernet port to the BL2000’s RJ-45
Ethernet connector. Open this sample program from the SAMPLES\TCPIP\ICMP folder,
compile the program, and start it running under Dynamic C. When the program starts running, the green LNK light on the BL2000 should be on to indicate an Ethernet connection
is made. (Note: If the LNK light does not light, you may not have a crossover cable, or if
you are using a hub perhaps the power is off on the hub.)
The next step is to ping the board from your PC. This can be done by bringing up the MSDOS window and running the pingme program:
ping 10.10.6.100
or by Start > Run
and typing the entry
ping 10.10.6.100
Notice that the orange ACT light flashes on the BL2000 while the ping is taking place, and
indicates the transfer of data. The ping routine will ping the board four times and write a
summary message on the screen describing the operation.
User’s Manual
57
5.4 Running More Sample Programs With a Direct Connection
The program SSI.C (SAMPLES\BL2000\TCPIP\) demonstrates how to make the
BL2000 a Web server. This program allows you to turn the LEDs on an attached Demonstration Board from the Tool Kit on and off from a remote Web browser. LEDs DS4–DS8
on the BL2000 will match those on the Web page. As long as you have not modified the
TCPCONFIG 1 macro in the sample program, enter the following server address in your
Web browser to bring up the Web page served by the sample program.
http://10.10.6.100
Otherwise use the TCP/IP settings you entered in the TCP_CONFIG.LIB library.
The sample program SMTP.C (SAMPLES\BL2000\TCPIP\) allows you to send an E-mail
when a switch on the Demonstration Board is pressed. Follow the instructions included
with the sample program.
The sample program TELNET.C (SAMPLES\BL2000\TCPIP\) allows you to communicate with the BL2000 using the Telnet protocol. This program takes anything that comes
in on a port and sends it out Serial Port B. It uses digital input IN0 to indicate that the
TCP/IP connection should be closed, and it uses high-current output OUT0 to indicate that
there is an open connection. You may change the digital input and output to suit your
application needs.
Run the Telnet program on your PC (Start > Run telnet 10.10.6.100). As long as
you have not modified the TCPCONFIG 1 macro in the sample program, the IP address is
10.10.6.100 as shown; otherwise use the TCP/IP settings you entered in the
TCP_CONFIG.LIB library. Each character you type will be printed in Dynamic C's STDIO
window, indicating that the board is receiving the characters typed via TCP/IP.
5.5 Where Do I Go From Here?
NOTE: If you purchased your BL2000 through a distributor or Rabbit partner, contact
the distributor or partner first for technical support.
If there are any problems at this point:
• Use the Dynamic C Help menu to get further assistance with Dynamic C.
• Check the Rabbit Technical Bulletin Board and forums at www.rabbit.com/support/bb/
and at www.rabbit.com/forums/.
• Use the Technical Support e-mail form at www.rabbit.com/support/.
If the sample programs ran fine, you are now ready to go on.
If the sample programs ran fine, you are now ready to go on.
Additional sample programs are described in the Dynamic C TCP/IP User’s Manual.
Refer to the Dynamic C TCP/IP User’s Manual to develop your own applications. An
Introduction to TCP/IP provides background information on TCP/IP, and is available on
the Web site.
58
Wildcat (BL2000)
APPENDIX A. SPECIFICATIONS
Appendix A provides the specifications for the BL2000 and
describes the conformal coating.
User’s Manual
59
A.1 Electrical and Mechanical Specifications
Figure A-1 shows the mechanical dimensions for the BL2000.
0.120 dia × 4
(3.0)
+
G
PWR
LNK
C46
C47
C48
GND
C49
GND
C50
C51
GN D
C52
GND
GND
GND
J11
J9
IN3
IN4
IN5
IN6
IN7
IN8
IN9
IN10 OUT8 OUT9 GND
OUT0 OUT1 OUT2 OUT3 OUT4 OUT5 OUT6 OUT7
NO
COM
NC
(54)
(87)
2.11
0.65
C45
(16.5)
GND
DS8
C37 C42
C44
Q6
J8
J10
IN2
3.413
ACT
OUT 0
DS7
+
Q5
DS6
+
DS5
+
DS4
BT1
BAD
(16)
10
Q3
DS3
K1
Q4
D
1
R29
C26
DS2
R26
R25
3
1 2
6
GND
DS1
0.63
C12
R21
C32
R41 R42 R43 R44 R45 R46 R47 R48 R49
D4 D5 D6 D7 D8 D9 D10 D11 D12
C43
C9
R14
5
(19.5)
C15
GND
J12
C77 Q1
Y1
4
40
C35 R38 R52 C40 R56 R60
GN D
C36 R39 R53 C41 R57 R61
GND
C33 R36 R50 C38 R54 R58
GND
R22
C21
U5
R33
C34 R37 R51 C39 R55 R59
3
C76
R152
R32
R34
R35
R40
D3
C31 R31
L1
J7
POWER IN
GND
AGND
C5 C7
U3
15
TVS1
4
2
AGND
R3
R18
U6
C29
(9.2)
C78
65
R151
Q2
R30
C13
JP2
90
U4
C25
C28
1
AG ND
R2
R23
R24
C14
Y2
C22 R27 R28 C27
C24
D2
AGND
C75 R5 C79
C11
R11
R10
R157
JP1
Y3
0.36
AGND
R17
C18
C19
C17
C23
D1
C2C3 AGND
C8 U2
C80 R130
R16
R15
R19
R153 R154 U1
C16
J6
GND
C4 R7
C10R12
0.768
R13C1
R9
R8
R20
C20
Jacks extend
0.16" (4.0 mm)
past edge of
board
GND
J5
AGND DAC1 DAC0 ADC8 ADC7 ADC6 ADC5 ADC4 ADC3 ADC2 ADC1 ADC0
OUT 1
GN D
R4
R6
R1
J4
J3
485+ RXD2 TXD2 RXD1 TXD1
OUT 2
GND
485-
OUT 3
IN0
Battery
(20.9)
0.823
IN1
S
GND
RST-
+
GND
+K
C85
+RAW GND
J1
J2
GND
0.65
2.84
(16.5)
(72)
4.14
(105)
0.53
0.50
(14)
(11)
0.44
(12.6)
0.82
(21)
4.14
(105)
0.20
(3.2)
(8.9)
0.42
BL2000
0.125
(2.5)
0.10
BL2000
FRICTION-LOCK
CONNECTOR
(10.7)
(8.6)
0.34
IDC
CONNECTOR
0.35
(5)
BOTTOM-MOUNT
CONNECTOR
BL2000
0.025 sq.
(0.64)
Figure A-1. BL2000 Dimensions
NOTE: All measurements are in inches followed by millimeters enclosed in parentheses.
All dimensions have a manufacturing tolerance of ±0.01" (0.25 mm).
60
Wildcat (BL2000)
Table A-1 lists the electrical, mechanical, and environmental specifications for the BL2000.
Table A-1. BL2000 Specifications
Feature
BL2000
BL2020
10Base-T, LNK and ACT LEDs
None
Flash Memory
256K (standard)
SRAM
128K (standard)
Backup Battery
Digital Inputs
BL2030
Rabbit 2000® at 22.1 MHz
Microprocessor
Ethernet Port
BL2010
Panasonic CR2330 or equivalent 3 V lithium coin type, 265 mA·h
standard using onboard battery holder; optional 3 V, 950 mA·h
solder-in battery available; external battery connector
11 inputs hardware-configurable pull-up or pull-down,
± 36 V DC, switching threshold 2.4 V typical
Digital Outputs
10 outputs sinking or sourcing, +40 V DC,
200 mA maximum per channel (2 channels can sink up to 750 mA each)
Analog Inputs
Four 12-bit res.,
Four 10-bit res.,
Four 12-bit res.,
Four 10-bit res.,
± 10 V DC, 1 MΩ, ± 10 V DC, 1 MΩ, ± 10 V DC, 1 MΩ, ± 10 V DC, 1 MΩ,
up to 4,000
up to 4,000
up to 4,000
up to 4,000
samples/s
samples/s
samples/s
samples/s
Analog Outputs
Two 12-bit res.,
0–4 V DC,
update rate 12 kHz
None
Two 12-bit res.,
0–4 V DC,
update rate 12 kHz
None
Five at 12 kΩ,
12-bit res.,
0–48 V DC
Seven at 12 kΩ,
10-bit res.,
0–48 V DC
Five at 12 kΩ,
12-bit res.,
0–48 V DC
Seven at 12 kΩ,
10-bit res.,
0–48 V DC
Dual-Purpose Analog or Digital
Inputs
Relay Output
SPDT with snubbers*: 1 A @ 30 V DC, 300 mA @ 120 V AC
(uses one digital output)
max. contact settling time 4 ms
4 serial ports:
• two RS-232 or one RS-232 (with CTS/RTS)
Serial Ports
Serial Rate
Connectors
• one RS-485, onboard network termination and bias resistors
• one 5 V CMOS-compatible programming port
Max. burst rate = CLK/32
Max. sustained rate = CLK/64
one RJ-45 (Ethernet)
one 2 × 5, 2 mm pitch (serial programming port)
one power jack for AC adapter
four 12-terminal screw connectors (14 AWG/1.5 mm2 wire) for analog
and digital I/O, relay
Real-Time Clock
User’s Manual
Yes
61
Table A-1. BL2000 Specifications (continued)
Feature
Timers
Watchdog/Supervisor
Power
Operating Temperature
BL2000
BL2010
BL2020
BL2030
Five 8-bit timers (four are cascadable from the first) and
one 10-bit timer with two match registers
Yes
9–40 V DC or 24 V AC (±10%), 1.5 W max.
–40°C to +70°C
Humidity
5–95%, noncondensing
Board Size
3.43" × 4.15" × 0.82"
(87 mm × 105 mm × 21 mm)
* When using the BL2000 in a CE-certified application, the voltages handled by the relay must
not exceed SELV levels (42.4 V AC peak, or 60 V DC).
62
Wildcat (BL2000)
A.1.1 Headers
The BL2000 has an option for 0.1" IDC headers or friction-lock connectors at J1, J3, J10,
and J11 for physical connection to other boards or ribbon cables.
Figure A-2 shows the BL2000 footprint. These values are relative to one of the mounting
holes.
3.380
(85.9)
3.189
(81.0)
1.239
(31.5)
0.760
(19.3)
(67.1)
2.641
(66.0)
(57.9)
(53.7)
2.598
J12
2.113
J6
J3
J5
2.280
J1
J7
(9.2)
(12.4)
0.361
0.487
J11
J10
1.589
(40.4)
2.839
(72.1)
Figure A-2. User Board Footprint for BL2000
NOTE: The same footprint applies for the IDC header and bottom-mount socket options.
User’s Manual
63
A.2 Conformal Coating
The areas around the crystal oscillator and the battery backup circuit on the BL2000 have
had the Dow Corning silicone-based 1-2620 conformal coating applied. The conformally
coated areas are shown in Figure A-3. The conformal coating protects these high-impedance circuits from the effects of moisture and contaminants over time.
AGND
BT1
DS5
+
G
PWR
Conformally
coated area
BAD
DS7
+
Q5
DS6
+
DS4
+
10
C44
GND
C45
C46
C47
C48
GND
C49
GND
C50
C51
GN D
C52
Q6
DS8
C37 C42
GND
DS3
Q3
1
K1
Q4
D
DS2
R26
R25
R29
C32
R41 R42 R43 R44 R45 R46 R47 R48 R49
D4 D5 D6 D7 D8 D9 D10 D11 D12
C43
DS1
R21
6
3
C12
5
GND
R24
C35 R38 R52 C40 R56 R60
GN D
C36 R39 R53 C41 R57 R61
GND
C33 R36 R50 C38 R54 R58
GND
R14
Q1
C26
R32
R34
R35
R40
D3
R33
C34 R37 R51 C39 R55 R59
J7
POWER IN
40
TVS1
3
C31 R31
L1
C77
1 2
U6
C29
4
4
15
R151
Q2
R30
C25
C28
R22
C21
Y1
90
U4
C76
R152
U5
C9
U3
R18
65
Y2
C13
JP2
J12
C5 C7
LNK
AGND
R3
C15
C19
C22 R27 R28 C27
C24
GND
C78
R17
R153 R154 U1
C18
C17
2
AG ND
R2
R23
C14
Y3
1
AGND
C75 R5 C79
C11
R11
R10
R157
JP1
C80 R130
R16
R15
R19
C16
D2
AGND
C4 R7
C10R12
C23
D1
C2C3 AGND
C8 U2
R8
R20
C20
J6
GND
ACT
R13C1
R9
OUT 0
GND
J5
AGND DAC1 DAC0 ADC8 ADC7 ADC6 ADC5 ADC4 ADC3 ADC2 ADC1 ADC0
OUT 1
GN D
R4
R6
R1
J4
J3
485+ RXD2 TXD2 RXD1 TXD1
OUT 2
GND
485-
OUT 3
IN0
Battery
GND
IN1
S
RST-
+
GND
+K
C85
+RAW GND
J1
J2
GND
GND
GND
J8
J10
J11
J9
IN2
IN3
IN4
IN5
IN6
IN7
IN8
IN9
IN10 OUT8 OUT9 GND
OUT0 OUT1 OUT2 OUT3 OUT4 OUT5 OUT6 OUT7
NO
COM
NC
GND
Figure A-3. BL2000 Areas Receiving Conformal Coating
Any components in the conformally coated area may be replaced using standard soldering
procedures for surface-mounted components. A new conformal coating should then be
applied to offer continuing protection against the effects of moisture and contaminants.
NOTE: For more information on conformal coatings, refer to Rabbit Technical Note 303,
Conformal Coatings.
64
Wildcat (BL2000)
A.3 Jumper Configurations
Figure A-4 shows the header locations used to configure the various BL2000 options via jumpers.
JP1
JP2
Top Side
GND
JP3
JP4
JP5
JP6
TP15
R160
GND
R161
TP17
R118
Bottom Side
Figure A-4. Location of BL2000 Configurable Positions
User’s Manual
65
Table A-2 lists the configuration options.
Table A-2. BL2000 Jumper Configurations
Header
Description
Factory
Default
Pins Connected
Pin 12 is Vcc
R160 installed
Pin 12 is GND
R161 installed
×
Bias and termination resistors
connected
×
J9
JP1
RS-485 Bias and Termination
Resistors
1–2
3–4
None
JP2
JP3
JP4
JP5
JP6
Bias and termination resistors not
connected
1–2
Normal Mode
2–3
Bank Mode
1–2
+V
2–3
+REF
1–2
128K/256K
2–3
512K
1–2
128K
2–3
512K
1–2
Pulled up
2–3
Pulled down
Flash Memory Bank Select
D/A Converter Power Supply
Flash Memory Size
SRAM Size
Digital Input Pull-Up/Pull-Down
Resistors
×
×
×
×
×
NOTE: Only header JP1 uses actual jumpers. The other connections are made using 0 Ω
surface-mounted resistors.
66
Wildcat (BL2000)
A.4 Use of Rabbit 2000 Parallel Ports
Figure A-5 shows the Rabbit-based subsystems designed into the BL2000.
PB0–
PB5
PA0–PA7
Port A
(OUT0–OUT7)
PC0–PC5
Port B
(IN6–IN10, CTRL)
Programming
Port
DA0–DA7
Data Lines
RAM
Port D
(ADC, DAC, Eth)
RABBIT
Serial Ports
(Port C)
PC6–PC7
PD2
PD3
PB6
PB7
PE2–PE7
Port E
(IN0–IN5
OUT8–OUT9)
2000™
Real-Time Clock
Watchdog
7 Timers
Slave Port
Clock Doubler
PD0
PD1
PD4–
PB7
PE0, PE1
Address Lines
A0–A18
IORD
IOWR
I/O Control
Misc. Input
Backup Battery
Support
RESET
Flash
Figure A-5. BL2000 Rabbit-Based Subsystems
Table A-3 lists the Rabbit 2000 parallel ports and their use in the BL2000.
Table A-3. Use of Rabbit 2000 Parallel Ports
I/O
PA0
Output
OUT0/RELAY/LED_DS4
Off
PA1
Output
OUT1/LED_DS5
Off
PA2
Output
OUT2/LED_DS6
Off
PA3
Output
OUT3/LED_DS7
Off
PA4
Output
OUT4
Off
PA5
Output
OUT5
Off
PA6
Output
OUT6
Off
PA7
Output
OUT7
Off
PB0
Input
IN6
N/A
PB1
Input
CLKA
N/A
PB2
Input
IN7
N/A
User’s Manual
Signal
Output Function
State
Port
67
Table A-3. Use of Rabbit 2000 Parallel Ports (continued)
Output Function
State
Port
I/O
Signal
PB3
Input
IN8
N/A
PB4
Input
IN9
N/A
PB5
Input
IN10
N/A
PB6
Output
RS485_EN
Off
PB7
Output
UPGOOD
Off
PC0
Output
TXD RS-485
Inactive high
Serial Port D
PC1
Input
PC2
Output
RXD RS-485
N/A
RTS/TXC RS-232
Inactive high
Serial Port C
PC3
Input
PC4
Output
CTS/RXC RS-232
N/A
TXB RS-232
Inactive high
Serial Port B
PC5
Input
PC6
Output
RXB RS-232
N/A
TXA Programming Port
Inactive high
Serial Port A
PC7
Input
RXA Programming Port
N/A
PD0
Output
DAC-ADC_SK
On
PD1
Output
DAC-ADC_SDI
On
PD2
Input
RTL-ADC_SDO
N/A
PD3
Input
RTL_SK
N/A*
PD4
Output
RTL_SDI
On
PD5
Output
/DAC0_CS
Inactive high
PD6
Output
/DAC1_CS
Inactive high
PD7
Output
/ADC_CS
Inactive high
PE0
Output
OUT8
Off
PE1
Output
OUT9
Off
PE2
Input
IN0
N/A
PE3
Input
IN1
N/A
PE4
Input
IN2
N/A
PE5
Input
IN3
N/A
PE6
Input
IN4
N/A
PE7
Input
IN5
N/A
* PD3 is an output (and is on) for the BL2020 and the BL2030.
68
Wildcat (BL2000)
APPENDIX B. PLASTIC ENCLOSURE
The plastic enclosure provides a secure way to protect your
BL2000. The enclosure itself may be mounted on any flat surface.
Appendix B describes how to mount the BL2000 inside the plastic enclosure, how to install the optional light pipes, and provides details on mounting the assembly.
User’s Manual
69
B.1 Assembly
1. Attach the BL2000 to the plastic enclosure base.
Position the BL2000 over the plastic enclosure base as shown below in Figure B-1. Attach
the BL2000 to the base using the two 4-40 × ¼ screws supplied.
tery
TION
PW
R
LNK
ACT
BAD
CAU
DS4
+
10
DS3
+
1
DS2
GN D
C52
Q6
DS8
C42
C51
C37
GND
C50
DS1
+
+
DS7
GND
C49
BT1
G
DS6
C48
K1
Q4
DS5
D
Q3
R21
5
Y1
C32
R43 R44 R45 R46 R47 R48 R49
D7
D8
D9 D10 D11 D12
D6
C47
C9
R14
C12
C15
GND
C46
Q1
R26
R25
GND
C45
3
C26
Q5
R41 R42
D4
D5
C44
C77
R22
C21
2
R29
J12
C5 C7
R8
U3
R18
6
GND
GN D
1
AGND
AGND
R3
C78
R23
C14 R2
4
GND
R2
C79
4
40
GND
R33
C43
U5
15
3
R152
R32
R34
R35
R40
D3
C31 R31
L1
C13 C76
U6
C36
R39
R5
3
C41
R57
R61
C35
R38
R52
C40
R56
R60
C34
R37
R5
1
C39
R55
R59
C33
R36
R50
C38
R54
R58
2
GND
IN2
Q2
C29
AG ND
AGND
C75 R5
65
4
AGND
U2
JP2
90
1
J7
POWER IN
J8
J10
1
R15
TVS
1
D2
U4
R30
AGND DAC1 DAC0 ADC8 ADC7 ADC6 ADC5 ADC4 ADC3 ADC2 ADC1 ADC0
AGND
R17
R154 U1
C18
C22
R27
R28
C27
C19
Y3 Y2
C17
C25
C28
J4
J3
TXD1
C2C3
C8
C1
R111
R10
R15
JP17
C80 R130
R16
R15
R19
R153
C16
C24
TXD2 RXD1
GND
C4 R7
C10 R12
R20
C20
J6 C23
D1
RXD2
R13C1
R9
OU
T0
485+
GND
OU
T1
485-
J5
OU
T2
IN0
GN D
OU
T3
IN1
Bat
RST-
GND
R4
R6
S
+K
GND
+
GND
GND
R1
C85
+RAW
J1
J2
GND
GND
GND
J11
J9
IN3
IN4
IN5
IN6
IN7
IN8
IN9
IN10
OUT8 OUT9
GND
OUT0
OUT1 OUT2 OUT3 OUT4 OUT5 OUT6 OUT7
NO
COM
NC
GND
Figure B-1. Attach BL2000 to Plastic Enclosure Base
2. Install light pipes (optional).
Light pipes are included in the
Tool Kit to facilitate seeing the
LEDs on the BL2000 board
once the enclosure is assembled.
Notched
side
With the enclosure top positioned as shown in Figure B-2,
insert the eight light pipes into
the slots identified in Figure B2. Position the light pipes snugly
against the enclosure top since
there is little clearance between
...
Light pipe
flange is firmly
the light pipes and the LEDs on
against
enclosure
the BL2000. The light pipes
“snap” in place. Verify that the
light pipes are aligned over the
Figure B-2. Install Light Pipes in Enclosure Top
LEDs, then apply a drop of
cyanoacrylate or contact cement
to the inside of the enclosure around each light pipe to hold it in place.
NOTE: Once the glue is applied, it will not be possible to change the alignment of the
light pipes without damaging the plastic enclosure.
70
Wildcat (BL2000)
3. Attach the enclosure top to the base.
Position the enclosure top over the plastic enclosure base as shown below in Figure B-3.
Attach the enclosure top to the base using the two 4-40 × ½ screws supplied. If you
installed the light pipes, be sure they are aligned over the LEDs as shown.
Notched
side
+RAW
GND
+K
RST-
IN1
IN0
485-
485+
C51
GN D
C52
PW
R
LNK
ACT
OU
T0
OU
T1
T2
BAD
GND
GND
OU
ery
TION
CAU
C50
DS3
GND
DS2
C49
DS1
Q6
DS8
C37
C42
R61
R60
C48
GND
DS7
C32
R43 R44 R45 R46 R47 R48 R49
D7
D8
D9 D10 D11 D12
D6
C47
DS6
R56
C46
DS5
+
+
R57
R58
R59
C45
BT1
G
C41
C40
R55
R54
GND
K1
Q4
DS4
Q3
10
D
1
Y1
R26
R25
3
2
R29
6
R52
R53
C39
C38
C44
C9
R14
C12
R21
C77 Q1
C26
J12
C5 C7
R8
U3
5
15
R38
R39
R51
R50
C43
GND
AGND
AGND
R3
R24
1
C27
+
C78
R18
R22
C21
4
40
90
R28
+
R2
R23
C14
R152
U5
R27
C35
C36
R37
GND
GN D
C79
C4 R7
Q5
R41 R42
D4
D5
AG ND
AGND
C75 R5
R17
R32
R34
R35
R40
D3
R33
R36
GND
AGND
C13 C76
U6
C31 R31
L1
C33
GND
GND
Q2
C29
C34
3
J7
POWER IN
IN2
R15
1
TVS1
2
J8
J10
U4
R30
C8
U1JP2
U2
65
C17
C24
C25
C28
R154
C18
C22
C19
Y3 Y2
4
AGND DAC1 DAC0 ADC8 ADC7 ADC6 ADC5 ADC4 ADC3 ADC2 ADC1 ADC0
AGND
C15
R153
C16
1
TXD1
C11
R11
R10
C80 R130
R16
R15
R19
R20
C20
D2
TXD2 RXD1
GND
OU
T3
R13C1
R9
Batt
C10 R12
GND
J5
S
GN D
R4
R6
+
GND
GND
C3
C2
GND
R1
J6 C23
D1
RXD2
J4
J3
J1
J2
GND
J11
J9
IN3
IN4
IN5
IN6
IN7
IN8
IN9
IN10
OUT8 OUT9
GND
OUT0
OUT1 OUT2 OUT3 OUT4 OUT5 OUT6 OUT7
NO
COM
NC
GND
Figure B-3. Attach Enclosure Top
4. Mount plastic enclosure (optional).
Use four #10 screws to attach the assembled plastic enclosure to the surface on which it
will be mounted. This step applies to production versions of BL2000 boards once development has been completed.
User’s Manual
71
B.2 Dimensions
4.
(1 25
08
)
Figure B-4 shows the dimensions for the plastic enclosure.
0.70
(18)
0.375" (9.5 mm)
is cut off each corner
5.00
(127)
4.35
(1 75
24
)
4.8
1.3
(3 75
5)
2.1
(5 3
4)
3.6
(9 2
2)
(110)
0.25
(6.4)
2.85
(72)
1.375
(35)
5.60
(142)
Figure B-4. Plastic Enclosure Dimensions
When fully assembled with the BL2000 installed, the total height of the plastic enclosure
will be 1.1" (28 mm).
72
Wildcat (BL2000)
APPENDIX C. POWER SUPPLY
Appendix C describes the power circuitry distributed on the
BL2000.
C.1 Power Supplies
Power is supplied to the BL2000 via a mini phone jack located at J7 or through the screw
terminal strip, header J2. The BL2000 itself is protected against reverse polarity by a
diode at D1 as shown in Figure C-1.
SWITCHING POWER REGULATOR
+RAW
POWER
IN
J2 orJ7
D1
DCIN
TVS1
C28
47 µF
14
15
8
1
12
U12
7
17
18
LM2575
Vcc
10
2
1
4
330 µH
D2 L1
1N5819
3
C29
330 µF
Figure C-1. BL2000 Power Supply
Capacitor C28 provides surge current protection for the voltage regulator, and allows the
external power supply to be located some distance away from the BL2000. A switching
power regulator is used. The input voltage range is from 9 V to 40 V.
The BL2000 can alternatively be powered by 24 V AC. In this case D1 and C28 act as a
half-wave rectifier to produce approximately 40 V DC at the input of the switching regulator, U12. Although a significant drop will be measured at DCIN, the voltage will never
drop below +9 V DC. As long as the minimum input level is maintained at the input to the
regulator, Vcc will be held at +5 V DC.
Pin 12 on header J9 can be configured to either supply Vcc (0 Ω surface-mounted resistor
installed at R160) or GND (0 Ω surface-mounted resistor installed at R161). When using
pin 12 on header J9 to supply Vcc, take care not to draw more than 25 mA current from
this pin, especially if you are using 24 V AC as your +RAW input power supply. The R160
and R161 locations are shown in Figure A-4.
User’s Manual
73
C.1.1 Power for Analog Circuits
Power to the analog circuits is provided by way of a two-stage low-pass filter, which isolates the analog section from digital noise generated by the other components. The analog
power voltage +V powers the op-amp for the buffered A/D converter inputs, the A/D converter, and the 4.096 V reference circuit. The two D/A converters can be powered either
from the reference, which is the standard, or from +V when ratiometric measurements are
desired. The maximum current draw on +V is less than 10 mA.
There are three digital grounds, one on each of the screw-terminal headers associated with
the digital functions (J2, J8, and J9). The digital ground and the analog ground share a single split ground plane on the board, with the analog ground connected at a single point to
the digital ground by a 0 Ω resistor (R87). This is done to minimize digital noise in the
analog circuits and to eliminate the possibility of ground loops. External connections to
analog ground are made on screw-terminal header J4.
C.2 Batteries and External Battery Connections
The SRAM and the real-time clock have battery backup. Power to the SRAM and the realtime clock (VRAM) is provided by two different sources, depending on whether the main
part of the BL2000 is powered or not. When the BL2000 is powered normally, and Vcc is
within operating limits, the SRAM and the real-time clock are powered from Vcc. If power
to the board is lost or falls below 4.63 V, the VRAM power will come from the battery. The
reset generator circuit controls the source of power by way of its /RESET output signal.
A replaceable 265 mA·h lithium battery provides power to the real-time clock and SRAM
when external power is removed from the circuit board. The drain on the battery is typically
less than 10 µA when there is no external power applied, and so the expected in-service life
of the battery is
265 mA·h
------------------------ = 3.0 years.
10 µA
The drain on the battery is typically less than 4 µA when external power is applied, and so
the expected BL2000 shelf life is
265 mA·h
------------------------ = 7.5 years.
4 µA
A long-life 950 mA·h solder-in battery is also provided for in the board layout. Alternatively, an external battery may be connected to the BL2000 via header J12. The existing
battery does not have to be removed when an external battery is used.
74
Wildcat (BL2000)
C.2.1 Replacing the Backup Battery
The battery is user-replaceable, and is fitted in a battery holder. To replace the battery, lift
up on the spring clip and slide out the old battery. Use only a Panasonic CR2330 or equivalent replacement battery, and insert it into the battery holder with the + side facing up.
NOTE: The SRAM contents and the real-time clock settings will be lost if the battery is
replaced with no power applied to the BL2000. Exercise care if you replace the battery
while external power is applied to the BL2000.
CAUTION: There is an explosion danger if the battery is short-circuited, recharged,
or replaced incorrectly. Replace the battery only with the same type or an equivalent
type recommended by the battery manufacturer. Dispose of used batteries according
to the battery manufacturer’s instructions.
C.2.2 Battery-Backup Circuit
Figure C-2 shows the battery-backup circuit.
Internal Battery
BT1
D14
VBAT-INT
R162
R164
1 kW
1 kW
R163
R165
1 kW
47 kW
VRAM
External Battery
J12
1
2
3
VBAT-EXT
D16
Vcc
D18
D20
VBAT
R25
11 kW
R159
22 kW
C30
1 nF
R92
47 kW
C83
1 nF
VOSC
Figure C-2. BL2000 Backup Battery Circuit
The battery-backup circuit serves three purposes:
• It reduces the battery voltage to the SRAM and to the real-time clock, thereby limiting
the current consumed by the real-time clock and lengthening the battery life.
• It ensures that current can flow only out of the battery to prevent charging the battery.
• A voltage, VOSC, is supplied to U14, which keeps the 32.768 kHz oscillator working
when the voltage begins to drop.
VRAM and Vcc are nearly equal (<100 mV, typically 10 mV) when power is supplied to
the BL2000.
User’s Manual
75
C.2.3 Power to VRAM Switch
The VRAM switch, shown in Figure C-3, allows the battery backup to provide power
when the external power goes off. The switch provides an isolation between Vcc and the
battery when Vcc goes low. This prevents the Vcc line from draining the battery.
VCC
R99
VRAM
0W
Q9
FDV302P
R93
11 kW
/RESET
R104
22 kW
Q8
MMBT3904
Figure C-3. VRAM Switch
Field-effect transistor Q9 is needed to provide a very small voltage drop between Vcc and
VRAM (<100 mV, typically 10 mV) so that the board components powered by Vcc will
not have a significantly different voltage than VRAM.
When the BL2000 is not in reset, the /RESET line will be high. This turns on Q8, causing
its collector to go low. This turns on Q9, allowing VRAM to nearly equal Vcc.
When the BL2000 is in reset, the /RESET line will go low. This turns off Q8 and Q9, providing an isolation between Vcc and VRAM.
76
Wildcat (BL2000)
C.2.4 Reset Generator
The BL2000 uses a reset generator, U4, to reset the Rabbit 2000 microprocessor when the
voltage drops below the voltage necessary for reliable operation. The reset occurs between
4.50 V and 4.75 V, typically 4.63 V. The reset can be initiated either externally or by a
watchdog timeout (WDTOUT) on the Rabbit 2000 microprocessor.
+5 V
/RESET
U4
WDTOUT
RESET
GENERATOR
R151
100 kW
R69
22 kW
C24
100 nF
D15
EXT
RESET
D17
Figure C-4. Reset Generator
NOTE: The Dynamic C function chkWDTO is not able to detect whether a watchdog
timeout has occurred on the BL2000. The GCSR status bits are read and stored by the
BIOS, and the reset status bit would normally change once a reset has occurred. However, since WDTOUT is tied to the reset generator, a watchdog timeout forces a hardware reset, followed by the BIOS reading and storing the status bits corresponding to
power-up or reset.
To use chkWDTO to detect a watchdog timeout, remove D15 (located on the bottom
side of the BL2000).
User’s Manual
77
C.3 Chip Select Circuit
Figure C-5 shows a schematic of the chip select circuit.
VRAM
R101
100 kW
/CSRAM
Q3
/CS1
Q4
R104
/RESET
22 kW
Q8
C81
1 nF
Figure C-5. Chip Select Circuit
The current drain on the battery in a battery-backed circuit must be kept at a minimum.
When the BL2000 is not powered, the battery keeps the SRAM memory contents and the
real-time clock (RTC) going. The SRAM has a powerdown mode that greatly reduces
power consumption. This powerdown mode is activated by raising the chip select (CS)
signal line. Normally the SRAM requires Vcc to operate. However, only 2 V is required
for data retention in powerdown mode. Thus, when power is removed from the circuit, the
battery voltage needs to be provided to both the SRAM power pin and to the CS signal
line. The CS control circuit accomplishes this task for the SRAM’s chip select signal line.
In a powered-up condition, the CS control circuit must allow the processor’s chip select
signal /CS1 to control the SRAM’s CS signal /CSRAM. So, with power applied, /CSRAM
must be the same signal as /CS1, and with power removed, /CSRAM must be held high
(but only needs to be battery voltage high). Q3 and Q4 are MOSFET transistors with complementary polarity. They are both turned on when power is applied to the circuit. They
allow the CS signal to pass from the processor to the SRAM so that the processor can periodically access the SRAM. When power is removed from the circuit, the transistors will
turn off and isolate /CSRAM from the processor. The isolated /CSRAM line has a 100 kΩ
pullup resistor to VRAM (R101). This pullup resistor keeps /CSRAM at the VRAM voltage level (which under no power condition is the backup battery’s regulated voltage at a
little more than 2 V).
78
Wildcat (BL2000)
Transistors Q3 and Q4 are of opposite polarity so that a rail-to-rail voltage can be passed.
When the /CS1 voltage is low, Q4 will conduct. When the /CS1 voltage is high, Q3 conducts. It takes time for the transistors to turn on, creating a propagation delay. This propagation delay is typically very small, about 10 ns to 15 ns.
The signal that turns the transistors on is a high on the processor’s reset line, /RESET.
When the BL2000 is not in reset, the reset line will be high, turning on n-channel Q4
directly and p-channel FET Q3 by way of Q8. When the board is in reset both Q3 and Q4
are off, isolating /CSRAM and allowing it to be pulled to VRAM.
User’s Manual
79
80
Wildcat (BL2000)
APPENDIX D.
DEMONSTRATION BOARD
Appendix D shows how to connect the Demonstration Board to
the BL2000.
D.1 Connecting Demonstration Board
Before running sample programs based on the Demonstration Board, you will have to connect the Demonstration Board from the BL2000 Tool Kit to the BL2000 board. Proceed as
follows.
1. Use the wires included in the BL2000 Tool Kit to connect header J1 on the Demonstration Board to header J8 and J9 on the BL2000. The connections are shown in Figure D-1
for sample programs DIGIN.C, DIGOUT.C, and SMTP.C, and in Figure D-2 for sample
program ANADIGIN.C.
2. Make sure that your BL2000 is connected to your PC and that the power supply is connected to the BL2000 and plugged in as described in Chapter 2, “Getting Started.”
User’s Manual
81
AGND
BT1
DS5
+
G
GND
C45
C46
C47
C48
GND
C49
GND
C50
C51
GN D
C52
DS8
C37 C42
C44
Q6
GND
GND
GND
J8
J10
J11
J9
IN2
IN3
IN4
IN5
IN6
IN7
IN8
IN9
IN10 OUT8 OUT9 GND
OUT0 OUT1 OUT2 OUT3 OUT4 OUT5 OUT6 OUT7
J1
·
·
·
·
·
·
·
·
·
·
·
·
LED1 LED2 LED3 LED4
BUZZER
LED4
LED3
LED2
LED1
K
+5V
1-2
3-4
5-6
DEMO BOARD
BUZZER
H1
··
··
··
··
··
··
··
SW4
H2
SW3
SW2
SW1
GND
Jumpers:
H1: None
H2: As shown
BL2000
BAD
DS7
+
Q5
DS6
+
DS4
+
10
GND
DS3
K1
Q4
D
Q3
1
C26
DS2
R26
R25
6
3
R29
C32
R41 R42 R43 R44 R45 R46 R47 R48 R49
D4 D5 D6 D7 D8 D9 D10 D11 D12
C43
DS1
R21
5
GND
GN D
C15
GND
C36 R39 R53 C41 R57 R61
GND
C12
C77 Q1
1 2
R32
R34
R35
R40
D3
R33
C35 R38 R52 C40 R56 R60
J7
POWER IN
40
L1
C34 R37 R51 C39 R55 R59
3
4
U6
C31 R31
C33 R36 R50 C38 R54 R58
2
R22
C21
15
TVS1
4
C9
R14
R18
65
R151
Q2
R30
C29
1
C76
R152
J12
C5 C7
U3
PWR
AGND
R3
Y1
90
U4
C25
C28
C13
JP2
U5
C22 R27 R28 C27
C24
GND
C78
R23
R24
C14
C19
Y2
C17
D2
AG ND
R2
R17
C18
Y3
12 V DC max.
AGND
C75 R5 C79
C11
R11
R10
R157
JP1
C80 R130
R16
R15
R19
R153 R154 U1
C16
C23
D1
AGND
R8
R20
C20
J6
C2C3 AGND
C8 U2
LNK
GND
ACT
R13C1
R9
C4 R7
C10R12
OUT 0
GND
J5
AGND DAC1 DAC0 ADC8 ADC7 ADC6 ADC5 ADC4 ADC3 ADC2 ADC1 ADC0
OUT 1
GN D
R4
R6
R1
J4
J3
485+ RXD2 TXD2 RXD1 TXD1
OUT 2
GND
485-
OUT 3
IN0
Battery
GND
IN1
S
GND
RST-
+
+K
C85
+RAW GND
J1
J2
8-7
SW4
6-5
SW3
4-3
SW2
2-1
SW1
NO
COM
NC
GND
BL2000
(Header J2/J8/J9)
+RAW, K
GND
IN0
IN1
IN2
IN3
OUT0
OUT1
OUT2
OUT3
Demonstration Board
(Header J1)
+5V
GND
SW1
SW2
SW3
SW4
LED1
LED2
LED3
LED4
Figure D-1. General Digital Connections Between BL2000 and Demonstration Board
82
Wildcat (BL2000)
User’s Manual
83
5-6
3-4
8-7
BUZZER
·
·
·
·
·
·
·
·
·
·
·
·
J1
BUZZER
LED4
LED3
LED2
LED1
K
+5V
SW2
SW4
LED1 LED2 LED3 LED4
SW1
GND
DEMO BOARD
1-2
H2
SW3
··
··
··
··
··
··
··
H1
SW4
6-5
SW3
4-3
SW2
2-1
Figure D-2. Analog Connections Between BL2000 and Demonstration Board
SW1
Jumpers:
H1: None
H2: As shown
Separate Power Supply
GND
ADC0
ADC1
ADC2
ADC3
N/C
N/C
N/C
N/C
BL2000
(Header J4)
+5 V
GND
GND
+K
GND
RST-
IN1
GND
IN0
485-
GN D
R4
R6
485+ RXD2 TXD2 RXD1 TXD1
J4
J3
AGND DAC1 DAC0 ADC8 ADC7 ADC6 ADC5 ADC4 ADC3 ADC2 ADC1 ADC0
C85
+RAW GND
J1
J2
R1
J5
GND
R13C1
R9
GND
C2C3 AGND
C8 U2
AGND
AGND
C75 R5 C79
R2
AG ND
C78
R3
AGND
AGND
C5 C7
R8
C13
J12
C9
R14
C12
R21
C77 Q1
90
40
R26
R25
6
BT1
DS5
R151
15
DS4
C22 R27 R28 C27
65
5
10
R29
DS3
Y1
3
1 2
1
R23
R24
C14
R22
C21
4
K1
Q4
DS7
+
G
+
Q5
DS6
TVS1
D
Q3
R32
R34
R35
R40
D3
DS2
C31 R31
DS1
JP2
C76
R152
U5
C15
R17
C18
C19
Y2
U4
R18
C11
R11
R10
R157
JP1
C80 R130
R16
R15
R19
R153 R154 U1
C24
R33
C33 R36 R50 C38 R54 R58
C35 R38 R52 C40 R56 R60
GND
GND
C45
C47
C46
C48
C50
C49
GND
GND
C51
C52
GN D
Q6
DS8
C37 C42
C34 R37 R51 C39 R55 R59
C32
R41 R42 R43 R44 R45 R46 R47 R48 R49
D4 D5 D6 D7 D8 D9 D10 D11 D12
C36 R39 R53 C41 R57 R61
4
1
L1
GND
C44
C43
GND
GN D
C26
U6
C29
D2
3
2
J7
POWER IN
GND
U3
C4 R7
C10R12
R20
C20
C16
Y3
C17
J6
C23
D1
Q2
R30
C25
C28
+
+
OUT 2
Battery
PWR
LNK
ACT
OUT 0
OUT 1
OUT 3
+5V
GND
SW1
SW2
SW3
SW4
LED1
LED2
LED3
LED4
Demonstration Board
(Header J1)
EXTERNAL
POWER SUPPLY
12 V DC max.
GND
+
S
BAD
GND
GND
BL2000
GND
J8
J10
J11
J9
IN2
IN3
IN4
IN5
IN6
IN7
IN8
IN9
IN10 OUT8 OUT9 GND
OUT0 OUT1 OUT2 OUT3 OUT4 OUT5 OUT6 OUT7
NO
NC
COM
GND
84
Wildcat (BL2000)
INDEX
A
D
A/D converter
function calls
_anaIn ............................ 47
anaIn .............................. 48
anaInCalib ..................... 47
anaInEERd .................... 49
anaInEEWr .................... 49
anaInVolts ..................... 49
analog I/O
reference voltages ............. 28
analog inputs ......................... 27
use as digital inputs ........... 27
analog outputs ....................... 28
D/A converter
function calls
anaOut ........................... 51
anaOutCalib .................. 50
anaOutEERd ................. 52
anaOutEEWr ................. 52
anaOutVolts .................. 52
D/A converter outputs .......... 28
Demonstration Board .............. 3
hookup instructions ........... 81
analog sample programs 83
digital sample programs 82
jumper configurations . 82, 83
wire assembly ..................... 3
digital I/O
function calls
digIn .............................. 44
digOut ........................... 44
SMODE0 .......................... 26
SMODE1 .......................... 26
digital inputs ......................... 17
configured pull-up or pulldown ............................. 17
dual-purpose A/D converter
inputs as digital inputs .. 18
switching threshold ........... 18
digital outputs ....................... 19
+K ..................................... 19
pulled up or pulled down .. 19
sinking ............................... 19
sourcing ............................. 19
dimensions
BL2000 board ................... 60
plastic enclosure ................ 72
B
battery
connections ....................... 74
life ..................................... 74
replacing the backup battery ................................ 75
board initialization
function calls ..................... 42
brdInit ............................ 42
C
C language ............................ 35
CE compliance ........................ 5
design guidelines ................. 6
chip select circuit .................. 78
clock doubler ........................ 32
conformal coating ................. 66
connections
battery ............................... 74
Ethernet cable ................... 53
Dynamic C ........................ 4, 35
add-on modules ................. 37
COM port .......................... 11
installation ......................... 10
Rabbit Embedded Security
Pack ................................ 4
standard features
debugging ...................... 36
starting .............................. 11
telephone-based technical
support ...................... 4, 37
upgrades and patches ........ 37
E
EMI
spectrum spreader feature . 33
Ethernet cables ...................... 53
Ethernet connections ............. 53
steps .................................. 53
Ethernet port ......................... 24
ground lug ......................... 25
handling EMI and noise .... 25
pinout ................................ 24
external interrupts ................. 32
F
features .................................... 1
H
headers
Demonstration Board
H1 ............................ 82, 83
H2 ............................ 82, 83
I
installation
plastic enclosure
BL2000 ......................... 70
light pipes ...................... 70
top ................................. 71
User’s Manual
85
IP addresses ...........................56
how to set ..........................55
how to set PC IP address ...56
J
jumper configurations .....65, 66
Demonstration Board ..82, 83
J9(12) .................................73
J9(12) is GND ...................66
J9(12) is Vcc ......................66
JP1 (RS-485 bias and termination resistors) ...........24, 66
JP2 (flash memory bank
select) ......................30, 66
JP3 (D/A converter power
supply) .....................28, 66
JP4 (flash memory size) 30, 66
JP5 (SRAM size) .........30, 66
JP6 (digital input pull-up/pulldown resistors) ........17, 66
jumper locations ................65
K
K ............................................19
L
LED outputs
function calls
ledOut ............................46
M
memory .................................30
flash memory configurations
........................................30
SRAM configuration for
different sizes ................30
models .....................................2
BL2000 ................................2
BL2010 ................................2
BL2020 ................................2
BL2030 ................................2
P
pinout
BL2000 headers ...........14, 15
Ethernet port ......................24
plastic enclosure ................3, 70
attach BL2000 to base .........7
dimensions .........................72
power management ...............73
86
power supplies .......................73
backup-battery circuit ........75
battery backup ...................74
chip select circuit ...............78
switching voltage regulator 73
VRAM switch ...................76
power supply
connections ....................9, 16
programming
programming cable ..............3
programming port ..............25
programming cable .................3
connections ..........................8
PROG connector ...............31
R
Rabbit 2000
parallel ports ......................67
real-time clock
how to set ..........................40
relay output
function calls
relayOut .........................46
relay outputs ..........................21
operation in parallel with
digital output OUT0 ......21
reset .........................................9
hardware ..............................9
reset generator ...................77
RS-232 ..................................22
RS-485 ..................................22
RS-485 network ....................23
termination and bias resistors ................................24
S
sample programs ...................38
A/D converter inputs
AD_CALIB.C ................39
AD1.C ............................39
AD2.C ............................39
AD3.C ............................39
AD4.C ............................39
BOARD_ID.C ...................38
COUNTLEDS.C ...............38
D/A converter outputs
DACAL.C ......................40
DAOUT1.C ...................40
DAOUT2.C ...................40
digital I/O
ANADIGIN.C ...............38
DIGIN.C ........................38
DIGOUT.C ....................38
LED.C ............................38
PWM.C ..........................39
RELAY.C ......................39
how to set IP address .........55
LEDS_4.C .........................38
PONG.C ............................12
real-time clock
RTC_TEST.C ................40
SETRTCKB.C ...............40
serial communication
MASTER.C ...................39
PUTS.C ..........................39
RELAYCHR.C ..............39
SLAVE.C ......................39
TCP/IP ...............................55
PINGME.C ....................57
SMTP.C .........................58
SSI.C ..............................58
TELNET.C ....................58
serial communication ............22
flow control .......................45
function calls
ser485Rx ........................45
ser485Tx ........................45
serCflowcontrolOff .......45
serCflowcontrolOn ........45
programming port ..............25
RS-232 description ............22
RS-485 description ............22
RS-485 network ................23
RS-485 termination and bias
resistors .........................24
serial ports
Ethernet port ......................24
setup ........................................7
attach BL2000 to enclosure
base .................................7
power supply connections ...8
programming cable connections .................................8
software ...................................4
libraries
BL2000 ..........................41
PACKET.LIB ................45
RS232.LIB .....................45
TCP/IP ...........................41
sample programs ...............38
Wildcat (BL2000)
specifications
dimensions
BL2000 ......................... 60
plastic enclosure ............ 72
electrical ............................ 61
header footprint ................. 63
headers .............................. 63
relative pin 1 locations ...... 63
temperature ....................... 61
spectrum spreader ................. 33
subsystems ...................... 13, 14
T
U
USB/serial port converter ....... 8
Dynamic C settings ........... 11
V
Vcc
J9(12) ................................ 73
W
watchdog timeout
function calls
chkWDTO ..................... 77
TCP/IP connections .............. 53
10Base-T Ethernet card .... 53
additional resources .......... 58
Ethernet hub ...................... 53
steps .................................. 53
technical support ................... 12
Tool Kit ................................... 3
AC adapter .......................... 3
DC power supply ................ 3
Demonstration Board .......... 3
Dynamic C software ........... 3
plastic enclosure .................. 3
programming cable ............. 3
software ............................... 3
User’s Manual ..................... 3
wire assembly ..................... 3
User’s Manual
87
88
Wildcat (BL2000)
SCHEMATICS
090-0117 BL2000 Schematic
www.rabbit.com/documentation/schemat/090-0117.pdf
090-0042 Demonstration Board Schematic
www.rabbit.com/documentation/schemat/090-0042.pdf
090-0128 Programming Cable Schematic
www.rabbit.com/documentation/schemat/090-0128.pdf
You may use the URL information provided above to access the latest schematics directly.
User’s Manual
89