Jackrabbit (BL1800) C-Programmable Single-Board Computer User’s Manual 019–0067 • 090515–J
Jackrabbit (BL1800) User’s Manual Part Number 019-0067 • 090515–J • Printed in U.S.A. ©2000–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.
TABLE OF CONTENTS Chapter 1. Introduction 1 1.1 Features .................................................................................................................................................1 1.2 Development and Evaluation Tools......................................................................................................2 1.3 How to Use This Manual ......................................................................................................................3 1.3.
Chapter 4. Software Reference 37 4.1 An Overview of Dynamic C............................................................................................................... 37 4.2 Sample Programs................................................................................................................................ 39 4.2.1 DEMOJR1.C .............................................................................................................................. 40 4.2.
1. INTRODUCTION The Jackrabbit is a high-performance, C-programmable singleboard computer with a compact form factor. A Rabbit® 2000 microprocessor operating at 29.5 MHz provides fast data processing. 1.1 Features • 29.
Three Jackrabbit models are available. Their standard features are summarized in Table 1. Table 1. Jackrabbit Features Model Features BL1800 Full-featured controller with switching voltage regulator. BL1810 BL1800 with 14.74 MHz clock, 128K flash EPROM, linear voltage regulator, sinking outputs sink up to 200 mA, sourcing output sources up to 100 mA, RS-232 serial ports rated for 1 kV ESD BL1820 BL1810 with 3 additional digital I/O, no RS-485, no backup battery.
1.3 How to Use This Manual This user’s manual is intended to give users detailed information on the Jackrabbit. It does not contain detailed information on the Dynamic C development environment or the Rabbit 2000® microprocessor. Most users will want more detailed information on some or all of these topics in order to put the Jackrabbit to effective use. 1.3.
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.
digital I/O cables. Your results may vary, depending on your application, so additional shielding or filtering may be needed to maintain the Class B emission qualification. NOTE: If no ferrite absorbers are fitted, the Jackrabbit boards will still meet EN55022:1998 Class A requirements as long as the spectrum spreader is turned on. The spectrum spreader is on by default for Jackrabbit models BL1810 and BL1820.
6 Jackrabbit (BL1800)
2. GETTING STARTED This chapter describes the Jackrabbit board in more detail, and explains how to set up and use the accompanying Prototyping Board. NOTE: This chapter (and this manual) assume that you have the Jackrabbit Development Kit. If you purchased a Jackrabbit board by itself, you will have to adapt the information in this chapter and elsewhere to your test and development setup. 2.
2.2 Development Hardware Connections There are three steps to connecting the Prototyping Board for use with Dynamic C and the sample programs: 1. Attach the Jackrabbit to the Prototyping Board. 2. Connect the programming cable between the Jackrabbit and the workstation PC. 3. Connect the power supply to the Jackrabbit.
2.2.1 Attach Jackrabbit to Prototyping Board J4 GND PA0 PA2 PA4 PA6 GND PB0 PB2 PB4 PB6 WDO GND PE6 PE4 PE2 PE0 HV0 HV2 K GND To attach the Jackrabbit board to the Prototyping Board, turn the Jackrabbit board over so that the battery is facing up. Plug the pins from headers J4 and J5 on the bottom side of the Jackrabbit board into the header sockets at J2 and J6 on the Prototyping Board as indicated in Figure 1.
2.2.2 Connect Programming Cable The programming cable connects the Jackrabbit to the PC running Dynamic C to download programs and to monitor the Jackrabbit during debugging. Connect the 10-pin connector of the programming cable labeled PROG to header J3 on the Jackrabbit board as shown in Figure 2. Be sure to orient the marked (usually red) edge of the cable towards pin 1 of the connector. (Do not use the DIAG connector, which is used for a normal serial connection.
2.2.3 Connect Power When all other connections have been made, you can connect power to the Jackrabbit. First, prepare the AC adapter for the country where it will be used by selecting the plug. The Jackrabbit Development Kit presently includes Canada/Japan/U.S., Australia/N.Z., U.K., and European style plugs.
2.3 Installing Dynamic C If you have not yet installed Dynamic C, do so now by inserting the Dynamic C CD from the Jackrabbit Development Kit 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.
2.4 Run a Sample Program If you already have Dynamic C installed, you are now ready to test your programming connections by running a sample program. Start Dynamic C by double-clicking on the Dynamic C icon on your desktop or in your Start menu. Dynamic C uses the serial port specified during installation. If you are using a USB port to connect your computer to the BL1810, click on the Communications tab and verify that Use USB to Serial Converter is selected to support the USB programming cable. Click OK.
2.5 Where Do I Go From Here? If everything appears to be working, we recommend the following sequence of action: 1. Run all of the sample programs described in Section 4.2 to get a basic familiarity with Dynamic C and the Jackrabbit’s capabilities. 2. For further development, refer to this Jackrabbit (BL1800) User’s Manual for details of the board’s hardware components. A documentation icon should have been installed on your workstation’s desktop; click on it to reach the documentation menu.
3. SUBSYSTEMS Chapter 3 describes the principal subsystems and their use for the Jackrabbit. • Digital Inputs/Outputs • A/D Converter • D/A Converters • Serial Communication • Memory Figure 3 shows these Rabbit-based subsystems designed into the Jackrabbit. BL1800 Digital Inputs Programming Port 32 kHz 15 MHz osc osc Digital Outputs RS-232 RS-485 SRAM Flash RABBIT 2000 HighPower Outputs ® A/D Converter Analog Outputs Figure 3.
3.1 Jackrabbit Pinouts Figure 4 shows the pinout for headers J4 and J5, which carry the signals associated with the Jackrabbit subsystems.
3.2 Digital Inputs/Outputs 3.2.1 Digital Inputs The Jackrabbit has six CMOS-level digital inputs, PB0–PB5, each of which is pulled up to +5 V as shown in Figure 5. The BL1820, which does not have RS-485, has one additional CMOS-level digital input, PC1. Vcc 47 kW Rabbit 2000 Microprocessor GND Figure 5. Digital Inputs The actual switching threshold is approximately 2.40 V. Anything below this value is a logic 0, and anything above is a logic 1.
3.2.2 Digital Outputs The Jackrabbit has four CMOS-level digital outputs, PB6–PB7, PCLK, and IOBEN. Four high-power outputs, HV0–HV3, are also available—HV0–HV2 can each sink up to 1 A (200 mA for the BL1810 and BL1820) at 30 V, and HV3 can source up to 500 mA (100 mA for the BL1810 and BL1820) at 30 V. The BL1820, which does not have RS-485, has one additional CMOS-level digital output, PC0. HV0HV2 SINKING OUTPUTS +K Current Flow PE[02] HV3 SOURCING OUTPUT +K Current Flow PE3 Figure 6.
3.2.2.1 Configurable High-Power Output (HV3) HV3, shown schematically in Figure 7, is factory-configured to be a sourcing output. K R55 R50 100 kW Q25 PE3 R48 HV3 (sinking 0W option) C27 100 nF 470 W Q28 C28 100 nF MMBT4401 R52 1.8 kW R51 MMBT3906 1.8 kW R56 0W HV3 (sourcing) D24 Figure 7. Configurable High-Current Output When used as a sourcing output, HV3 is switched to K when PE3 on the Rabbit 2000 goes high, and the two transistors shown in Figure 7 are turned on.
HV3 can also be reconfigured as a sinking output. To do so, remove the 0 Ω surfacemounted resistor R56, and solder on a 0 Ω surface-mounted resistor or jumper wire at R55. If you plan to drive inductive loads, add a diode at D21. Figure 8 shows the location of these components.
3.3 A/D Converter The analog-to-digital (A/D) converter, shown in Figure 9, compares the DA0 voltage to AD0, the voltage presented to the converter. DA0 therefore cannot be used for the digitalto-analog (D/A) converter when the A/D converter is being used. Vcc R34 51.1 kW AD0 R31 10 kW 9 R35 200 W DA0 Vcc R33 200 W 10 13 12 R32 51.1 kW DA0 too low LM324 8 0W + LM324 + R36 14 R30 0W PE7 PE6 DA0 too high Figure 9.
There is a 10 kΩ resistor, R31, connected between Vcc and AD0. This resistor should provide an appropriate voltage divider bias for a variety of common thermistors so that they can be connected directly between AD0 and ground. The A/D converter load is the 10 kΩ resistor connected to Vcc. Remove R31 if a smaller load is desired—this will lead to a very high input impedance for the A/D converter. The A/D converter has no reference voltage.
3.4 D/A Converters Two digital-to-analog (D/A) converter outputs, DA0 and DA1, are supplied on the Jackrabbit. These are shown in Figure 10. The D/A converters have no reference voltage. Although they may be fairly accurate from one programmed voltage to the next, they do not have absolute accuracy. This is because Vcc can change ±5%, the PWM outputs might not achieve the full 0 V and 5 V rail out of the processor, and the gain resistors in the circuit have a 1% tolerance.
It is very easy to do pulse-width modulation with the Rabbit 2000 microprocessor because of the chip’s architecture. 3.4.1 DA1 The op amp supporting DA1 converts pulse-width modulated signals to an analog voltage between 0 V and 5 V. A digital signal that varies with time is fed from PD4. The resolution of the DA1 output depends on the smallest increment of time to change the on/off time (the time between 5 V and 0 V).
either a 0% or a 100% duty cycle. The duty cycle is programmed as the high-time count of 1024 total counts of the Rabbit 2000’s timer B. Thus, 256 counts would be 25% of 1024 counts, and corresponds to a 25% duty cycle. Table 2 lists typical DA1 voltages measured for various duty cycle values with a load larger than 1 MΩ. Table 2. Typical DA1 Voltages for Various Duty Cycles Duty Cycle (%) Voltage (V) Programmed Count 0 0.002 0–122 12 0.620 123 25 1.242 256 50 2.483 512 72 3.
3.4.2 DA0 The op amp supporting DA0 translates a 12%–88% duty cycle to an analog voltage range of 0 V to 3 V. The software operates only within this duty cycle; a duty cycle less than 12% is rounded down to 0%, and any duty cycle above 88% is rounded up to 100%. DA0 uses a voltage divider that consists of R21 and R27 and a gain-offset circuit that consists of R26 and R29 to achieve the output range of 0 V to 3 V within the software duty cycle.
The resolution of the DA0 output depends on the smallest increment of time to change the on/off time (the time between 5 V and 0 V). The Jackrabbit uses the Rabbit 2000’s Port D control registers to clock out the signal at a timer timeout. The timer used is timer B. Timer B has 10 bits of resolution so that the voltage can be varied in 1/1024 increments. The resolution is thus about 3.88 mV for the DA0 output voltage range of 0 V to 3 V in the 12%–88% duty cycle.
3.5 Serial Communication The Jackrabbit has two RS-232 (3-wire) serial channels, one RS-485 serial channel, and one synchronous CMOS serial channel. 3.5.1 RS-232 The Jackrabbit’s two RS-232 serial channels are connected to an RS-232 transceiver, U4, an industry-standard MAX232 chip. U4 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 0 V to +Vcc signals to ±10 V.
U4 RS-232 U1 J4 GNDVIN GND J1 J2 GND PA0 PA2 PA4 PA6 GND PB0 PB2 PB4 PB6 WDO GND PE6 PE4 PE2 PE0 HV0 HV2 K GND VCC PA1 PA3 PA5 PA7 GND PB1 PB3 PB5 PB7 PCLK PE7 PE5 PE3 PE1 GND HV1 HV3 +RAW VCC U5 U3 SRAM Rabbit 2000 U6 RS-485 Y3 J5 VCC RXB TXB PC0 PC2 PC4 PC6 AD0 DA0 PD0 PD2 PD4 PD6 GND 485 VCC SM0 IOBEN GND /RST GND RXC TXC PC1 PC3 PC5 PC7 AGND DA1 PD1 PD3 PD5 PD7 GND 485+ VCC SM1 STAT VBAT GND Ground recommended RESET J3 JACKRABBIT Z-World, Inc.
The Jackrabbit comes with a 220 Ω termination resistor and 681 Ω bias resistors already installed, as shown in Figure 12. U4 RS-232 U1 J4 bias 485+ termination 485 bias R18 681 W R17 220 W 6 U6 7 R16 681 W GNDVIN GND J1 J2 GND PA0 PA2 PA4 PA6 GND PB0 PB2 PB4 PB6 WDO GND PE6 PE4 PE2 PE0 HV0 HV2 K GND VCC PA1 PA3 PA5 PA7 GND PB1 PB3 PB5 PB7 PCLK PE7 PE5 PE3 PE1 GND HV1 HV3 +RAW VCC U5 U3 SRAM Rabbit 2000 R16 U6 Y3 RS-485 J3 JACKRABBIT Z-World, Inc.
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.
3.6 Programming Cable The programming cable is used to connect the Jackrabbit’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 Jackrabbit’s programming header, programs can be downloaded and debugged over the serial interface.
3.7 Memory 3.7.1 SRAM The Jackrabbit is designed to accept 32K to 512K of SRAM packaged in an SOIC case. Standard Jackrabbit models come with 128K of SRAM. A factory-installed option for 512K of SRAM is available. Figure 14 shows the locations and the jumper settings for the jumpers at JP1 used to set the SRAM size. The “jumpers” are 0 Ω surface-mounted resistors.
3.8 Other Hardware 3.8.1 External Interrupts Jackrabbit boards that carry the CE mark have external interrupts available on digital inputs PE4 and PE5. 3.8.2 Clock Doubler Jackrabbit BL1810 and BL1820 models take 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 14.74 MHz frequency is generated using a 7.37 MHz resonator.
3.8.3 Spectrum Spreader Jackrabbit 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 Jackrabbit BL1810 and BL1820 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.
36 Jackrabbit (BL1800)
4. SOFTWARE REFERENCE To develop and debug programs for the Jackrabbit (and for all other Rabbit hardware), you must install and use Dynamic C. 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. This chapter provides a tour of the major features of Dynamic C with respect to the Jackrabbit. 4.1 An Overview of Dynamic C Dynamic C has been in use worldwide since 1989.
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.
4.2 Sample Programs Sample programs are provided in the Dynamic C S A M P L E S folder. The various folders contain specific sample programs that illustrate the use of the corresponding Dynamic C libraries. For example, the sample program PONG.C demonstrates the output to the Dynamic C STDIO window. The SAMPLES\JACKRAB folder contains sample programs that illustrate features unique to the Jackrabbit.
4.2.1 DEMOJR1.C This sample program can be used to illustrate some of the functions of Dynamic C. First, open the file DEMOJR1.C, which is in the SAMPLES/JACKRAB folder. The program will appear in a window, as shown in Figure 15 below (minus some comments). Use the mouse to place the cursor on the function name WrPortI in the program and type . This will bring up a documentation box for the function WrPortI.
• The programming cable must be connected to the Jackrabbit board. (The colored wire on the programming cable is closest to pin 1 on header J3 on the Jackrabbit board, as shown in Figure 2.) The other end of the programming cable must be connected to the PC serial port. The COM port specified in the Dynamic C Options menu must be the same as the one the programming cable is connected to. • To check if you have the correct serial port, select Compile, then Compile BIOS, or type .
Editing the Program Click on the Edit box on the task bar. This will set Dynamic C into the edit mode so that you can change the program. Use the Save as choice on the File menu to save the file with a new name so as not to change the demo program. Save the file as MYTEST.C. Now change the number 25000 in the for (.. statement to 10000. Then use the F9 key to recompile and run the program.
• Setting break points. The F2 key is used to turn on or turn off (toggle) a break point at the cursor position if the program has already been compiled. You can set a break point if the program is paused at a break point. You can also set a break point in a program that is running at full speed. This will cause the program to break if the execution thread hits your break point. • Watch expressions. A watch expression is a C expression that is evaluated on command in the watch window.
4.2.2 Other Sample Programs Illustrating Digital I/O • DEMOJR2.C—repeatedly flashes LED DS3 (which is controlled by PA2) on the Prototyping Board. This sample program also illustrates the use of the runwatch() function to allow Dynamic C to update watch expressions while running. To test this: 1. Add a watch expression for "k" under "Inspect:Add/Del Watch Expression." 2. Click "Add to top" so that it will be permanently in the watch list. 3.
Before running the LCD_DEMO.C sample program, you will need an LCD based on the HD44780 (or an equivalent) controller. • LCD_DEMO.C—demonstrates a 4-bit interface to an LCD based on the HD44780 (or an equivalent) controller. Connect the LCD to Parallel Port A.
4.2.3 RS-232 Serial Communication Sample Programs • JR_FLOWCONTROL.C—This program demonstrates hardware flow control by configuring Serial Port C (PC3/PC2) for CTS/RTS with serial data coming from TxB at 115,200 bps. One character at a time is received and is displayed in the STDIO window. To set up the Prototyping Board, you will need to tie PC4 and PC5 (TxB and RxB) together at header J1, and you will also tie PC2 and PC3 (TxC and RxC) together as shown in the diagram.
4.2.4 RS-485 Serial Communication Sample Program The following sample program illustrates the use of the RS-485 serial drivers. The sample program shows a byte being transmitted, and then the RS-485 transceiver waits for a reply.
4.3 Cooperative Multitasking Cooperative multitasking is a convenient way to perform several different tasks at the same time. An example would be to step a machine through a sequence of steps and at the same time independently carry on a dialog with the operator via a human interface. Cooperative multitasking differs from a different approach called preemptive multitasking. Dynamic C supports both types of multitasking.
// state of virtual switch controlled by button int vswitch; S1 main(){ // begin main program // set up parallel port A as output WrPortI(SPCR,NULL,0x84); WrPortI(PADR,&PADRShadow,0xff); // turn off all LEDs vswitch=0; // initialize virtual switch off (1) while (1) { // Endless loop BigLoopTop(); // Begin a big endless loop // first task flash LED DS4 every second for 200 milliseconds (2) costate { BitWrPortI(PADR,&PADRShadow,0,3); waitfor(DelayMs(200)); BitWrPortI(PADR,&PADRShadow,1,3); waitfor(DelayMs(
used to collect some operations that are helpful to do once on every pass through the loop. Place the cursor on this function name BigLoopTop() and hit to learn more. The statement at (3) waits for a time delay, in this case 200 ms. The costatement is being executed on each pass through the big loop. When a waitfor condition is encountered the first time, the current value of MS_TIMER is saved and then on each subsequent pass the saved value is compared to the current value.
4.4 Jackrabbit Function Calls 4.4.1 I/O Drivers The Jackrabbit contains four high-power digital output channels, two D/A converter output channels, and one A/D converter input channel. These I/O channels can be accessed using the functions found in the JRIO.LIB library. 4.4.1.1 Initialization The function jrioInit() must be called before any other function from the JRIO.LIB library. This function initializes the digital outputs and sets up the driver for the analog input/outputs.
void digOut(int channel, int value); sets the state of a digital output bit. jrioInit must be called first. channel is the output channel number (0-3 on the Jackrabbit). value is the output value (0 or 1). void digOn(int channel); sets the state of a digital output bit to on (1). jrioInit must be called first. channel is the output channel number (0–3 on the Jackrabbit). void digOff(int channel); sets the state of a digital output bit to off (0). jrioInit must be called first.
Table 5. Typical Analog Output Voltages Corresponding to Values in anaOut Function Channel 0 PWM_MIN PWM_MAX 1024 DA0 0.08 V 0.08 V 2.875 V 3.4 V DA1 0.004 V 0.63 V 3.6 V 3.6 V The output value is set using the following function. void anaOut(int channel, int value); sets the state of an analog output channel. jrioInit must be called first. channel is the output channel number (0 or 1 on the Jackrabbit).
V max – V min m = --------------------------------------------------------------------PWM_MAX0 – PWM_MIN voltage = m × value + b 4.4.1.4 Analog Input The analog input channel on the Jackrabbit (AD0 on header J5) works by varying analog output channel DA0 until its voltage matches the input voltage on AD0. DA0 obviously cannot be used while an input voltage is being measured, although channel DA0 is still available.
4.4.2 Serial Communication Drivers 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.
4.5 Upgrading Dynamic C 4.5.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.
APPENDIX A. SPECIFICATIONS Appendix A provides the specifications for the Jackrabbit.
A.1 Electrical and Mechanical Specifications Figure A-1 shows the mechanical dimensions for the Jackrabbit. 3.5 (89) 3.3 (84) 0.9 (58) 2.5 (64) 2.28 0.2 (0.5) (23) 0.15 dia, 4x (15) 0.96 0.96 J4 (25) 0.59 0.59 (14) 0.53 0.53 (4) J5 3.5 (15) (25) (14) (89) Please refer to the Jackrabbit footprint diagram later in this appendix for precise header locations. 2.5 (64) Figure A-1.
Table A-1 lists the electrical, mechanical, and environmental specifications for the Jackrabbit boards. Table A-1. Jackrabbit Board Specifications Parameter BL1800 BL1810 BL1820 Microprocessor Rabbit 2000 @ 29.5 MHz Rabbit 2000 @ 14.
A.1.1 Exclusion Zone It is recommended that you allow for “exclusion zones” around the Jackrabbit when the Jackrabbit is incorporated into an assembly that includes other components. These “exclusion zones” that you keep free of other components and boards will allow for sufficient air flow, and will help to minimize any electrical or EMI interference between adjacent boards. Figure A-2 shows the “exclusion zones.” (15) 0.60 3.0 (76) 3.0 (76) Exclusion Zones 2.6 0.25 (66) (6) 0.9 (23) J5 2.
A.1.2 Headers The Jackrabbit has 0.1" IDC headers at J1 (1 × 3) and J2 (2 × 2) for the power supply and an external battery connection. There are 2 mm IDC headers at J3 (2 × 5 programming port) and at J4 and J5 (2 × 20 Rabbit subsystems) for physical connection to other boards or ribbon cables. Figure A-3 shows the Jackrabbit footprint to help you lay out the “motherboard” into which the Jackrabbit is plugged in. These values are relative to the mounting hole closest to header J3. J4 (53.3) 2.100 (46.
A.2 Jumper Configurations Figure A-4 shows the header and jumper locations used to configure the various Jackrabbit options. Top Side JP3 JP2 C27 Battery CAUTION D21 R55 R56 D24 Bottom Side JP1 R16 R17 R18 JACKRABBIT Z-World, Inc. Figure A-4.
Table A-2 lists the configuration options. 0 Ω surface mount resistors are used for all the header positions. Table A-2. Jackrabbit Jumper Configurations Header JP1 JP2 JP3 — — Description SRAM Size Pins Connected n.c.
A.3 Conformal Coating The areas around the crystal oscillator and the battery backup circuit on the Jackrabbit have had the Dow Corning silicone-based 1-2620 conformal coating applied. The conformally coated areas are shown in Figure A-5. The conformal coating protects these highimpedance circuits from the effects of moisture and contaminants over time, and helps to maintain the accuracy of the real-time clock. Conformally coated area Figure A-5.
A.4 Use of Rabbit 2000 Parallel Ports Figure A-6 shows the use of the Rabbit 2000 parallel ports. The Jackrabbit has 27 generalpurpose digital inputs/outputs available on headers J4 and J5—15 are bidirectional (one of which is used by the RS-485 chip on BL1800 and BL1810 models), seven are inputs only (one of which is used by the RS-485 chip on BL1800 and BL1810 models), and five are outputs only (one of which is used by the RS-485 chip on BL1800 and BL1810 models), as shown in Figure A-6.
The ports on the Rabbit 2000 microprocessor used in the Jackrabbit are configurable, and so the factory defaults can be reconfigured. Table A-3 lists the Rabbit 2000 factory defaults and the alternate configurations. Table A-3.
Table A-3.
68 Jackrabbit (BL1800)
APPENDIX B. PROTOTYPING BOARD Appendix B describes the features and accessories of the Prototyping Board, and explains the use of the Prototyping Board to demonstrate the Jackrabbit and to build prototypes of your own circuits.
B.1 Prototyping Board Overview The Prototyping Board included in the Development Kit makes it easy to connect a Jackrabbit board to a power supply and a PC workstation for development. It also provides some basic I/O peripherals (switches and LEDs), as well as a prototyping area for more advanced hardware development. For the most basic level of evaluation and development, the Prototyping Board can be used without modification.
B.1.1 Prototyping Board Features • Power LED—The power LED lights whenever power is connected to the Prototyping Board. • Reset Switch—A momentary-contact, normally open switch is connected directly to the Jackrabbit’s /RESET_IN pin. Pressing the switch forces a hardware reset of the system. • I/O Switches and LEDs—Four momentary-contact, normally open switches are connected to the PB2–PB5 pins of the Rabbit 2000 microprocessor on the Jackrabbit, and may be read as inputs by sample applications.
JACKRABBIT PROTOTYPING BOARD Z-World, Inc. DS7 GND VBAT STAT SM1 VCC J6 DS5 N.C. DS2 (80) S1 DS1 K AD0 HV3 GND HV2 RT1 PE4 POT GND AD0 PD0 3.15 S2 DS3 BZR VCC HV1 PB5 HV0 +RAW S3 DS4 RN1 GND PB4 PE0 JP2 PE1 PB3 PE2 1 2 R1 COIL(-) COIL(+) 3 J2 R3 LS1 VCC PE3 PB2 PE4 +RAW PE5 PA7 PE6 K PE7 PA6 GND GND PB7 PB5 PA3 PB4 PCLK PB3 PA2 PB2 PA5 WDO PB1 PA1 PB0 PA4 PB6 PA7 GND PA6 PA0 GND PA5 PA3 PA4 PA1 PA2 HV0 S4 DS6 N.O.
B.3 Using the Prototyping Board The Prototyping Board is actually both a demonstration board and a prototyping board. As a demonstration board, it can be used to demonstrate the functionality of the Jackrabbit right out of the box without any modifications to either board. There are no jumpers or dip switches to configure or misconfigure on the Prototyping Board so that the initial setup is very straightforward.
B.3.1 Demonstration Board A relay, a thermistor, four additional LEDs, and a serial cable are included in a bag of parts to further allow exploration of the Jackrabbit‘s operation. The SPDT relay handles 120 V at 5 A with a 12 V activating coil. The layout to accept this relay is included on the top side of the Prototyping Board. Note that the relay coil connections need to be wired to one of the sinking high-power outputs (HV0–HV2) of the Jackrabbit.
User’s Manual R3 LS1 3 2 R1 + Thermistor S1 PD0 GND AD0 1 K AD0 BZR VCC JP2 RT1 PE4 POT +RAW DS1 S2 DS2 DS3 S3 DS4 S4 } PWR Add Dev Kit LEDs } DS5 Existing LEDs S1 Figure B-5. Thermistor and Potentiometer Locations DS6 Unlike the CMOS-level signals on header J3, the programming port on the Jackrabbit board, the signals on header J1 on the Prototyping Board are full RS-232 level signals without needing the CMOS to RS-232 converter that is present in the programming cable.
B.3.2 Prototyping Board To maximize the availability of Jackrabbit resources, the demonstration hardware (LEDs, switches, potentiometer, buzzer) on the Prototyping Board may be disconnected. This is done by cutting the traces seen between and within the silk-screen outline of headers JP1 and JP2 on the Prototyping Board. Figure B-6 shows the 16 places where cuts should be made. An exacto knife or high-speed precision grinder tool like a Dremel® tool would work nicely to cut the traces.
Once the LEDs, resistors, and switches are disconnected as described above, the user has a Jackrabbit board with connection points conveniently brought out to labeled points at headers J3 and J7 on the Prototyping Board. Small to medium circuits can be prototyped using pointto-point wiring with 20 to 30 AWG wire between the prototyping area and the holes at locations J3 and J7.
78 Jackrabbit (BL1800)
APPENDIX C. POWER MANAGEMENT C.1 Power Supplies Power is supplied to the Jackrabbit board from an external source through either header J1 or header J4. J1 is a 3-pin straight header with a pitch of 0.1". Vin is on pin 2 between ground on pins 1 and 3. The symmetry allows for a 3-pin cable to be connected either way. The Jackrabbit board itself is protected against reverse polarity by a Shottky diode at D2 as shown in Figure C-1. The Shottky diode has a low forward voltage drop, 0.
The linear voltage regulator is simply a fixed-voltage regulator with a ±5% voltage output tolerance as the temperature changes. The regulator has a small heat sink, which increases the maximum external input voltage. Higher external input voltages increase the voltage dropped by the regulator. The Vcc coming out of the regulator is always 5 V.
The switching voltage regulator is used when there is a need for an additional range in the external input voltage or when lower power consumption is desired. The input voltage range is from 8 V to 40 V. Figure C-3 shows typical power operating curves for both the linear regulator (BL1810 and BL1820) and the switching regulator (BL1800) for a nonloaded Jackrabbit operating at 14.74 MHz with the programming cable connected. 125 Linear regulator (BL1810 and BL1820 @ 14.
C.2 Batteries and External Battery Connections The soldered-in 950 mA·h lithium coin cell provides power to the real-time clock and SRAM when external power is removed from the circuit. This allows the Jackrabbit to continue to keep track of time and preserves the SRAM memory contents. The drain on the battery is typically less than 20 µA when there is no external power applied. The battery can last more than 5 years: 950 mA·h ------------------------ = 5.4 years.
C.2.1 Battery Backup Circuit Figure C-5 shows the Jackrabbit battery backup circuitry. VRAM R12 0W MMBT5088LT1 Q1 3V VBAT R13 R10 4.3 MW R14 1.3 kW R15 D80 R80 0W D81 R81 0W D82 R82 0W Figure C-5. Jackrabbit Battery Backup Circuit Resistor R12, shown in Figure C-5, is typically not stuffed on the Jackrabbit board. VRAM and Vcc are equal when power is supplied to the Jackrabbit. R13 prevents any catastrophic failure of Q1 from allowing unlimited current to enter the soldered-in battery.
The battery-backup circuit serves two purposes: • It reduces the battery voltage to the real-time clock, thereby reducing 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. C.2.2 Power to VRAM Switch The VRAM switch, shown in Figure C-6, allows the soldered-in battery to provide power when the external power goes off.
C.3 Chip Select Circuit Figure C-7 shows a schematic of the chip select circuit. VRAM R37 /CSRAM Q21 /CS1 Q20 R39 VRAM R42 /RES R41 D20 C23 Q22 R40 Figure C-7. Chip Select Circuit The current drain on the battery in a battery-backed circuit must be kept at a minimum. When the Jackrabbit board 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.
Transistors Q20 and Q21 are of opposite polarity so that a rail-to-rail voltages can be passed. When the /CS1 voltage is low, Q20 will conduct. When the /CS1 voltage is high, Q21 will conduct. It takes time for the transistors to turn on, creating a propagation delay. This delay is typically very small, about 10 ns to 15ns. The signal that turns the transistors on is a high on the processor’s reset line, /RES.
INDEX A A/D converter ................. 21, 22 additional information online documentation .......... 3 analog input function calls anaIn .............................. 54 cof_anaIn ....................... 54 analog outputs function calls anaOut ........................... 53 B backup battery ................. 82, 83 chip select circuit .............. 84 external battery connections .............................. 82 board initialization function calls ..................... 51 jrioInit .....................
Prototyping Board (continued) pinout .................................77 prototyping area .................77 thermistor ..........................75 R Rabbit 2000 parallel ports 65, 66 real-time clock how to set ..........................14 reset .......................................11 reset generator .......................84 RS-232 ..................................28 RS-485 ..................................28 termination and bias resistors .................................30 S sample programs .....
SCHEMATICS 090-0092 Jackrabbit Schematic www.rabbit.com/documentation/schemat/090-0092.pdf 090-0088 Jackrabbit Prototyping Board Schematic www.rabbit.com/documentation/schemat/090-0088.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.