Page 2
Rabbit and Dynamic C are registered trademarks of Digi International Inc. Rabbit 2000 and RabbitCore are trademarks 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.
ABLE OF ONTENTS Chapter 1. Introduction 1.1 RCM2200 Features ..........................1 1.2 Advantages of the RCM2200 .......................2 1.3 Development and Evaluation Tools......................3 1.3.1 Development Software........................3 1.4 Development Kit Contents........................3 1.5 How to Use This Manual ........................4 1.5.1 Additional Product Information ....................4 1.5.2 Online Documentation ........................4 Chapter 2.
Page 4
A.1 Electrical and Mechanical Characteristics ..................50 A.1.1 Headers ............................53 A.1.2 Physical Mounting........................53 A.2 Bus Loading ............................54 A.3 Rabbit 2000 DC Characteristics ......................56 A.4 I/O Buffer Sourcing and Sinking Limit..................... 57 A.5 Jumper Configurations ........................58 A.6 Conformal Coating ..........................59 Appendix B.
Page 5
Appendix D. Sample Circuits D.1 RS-232/RS-485 Serial Communication .....................76 D.2 Keypad and LCD Connections ......................77 D.3 External Memory ..........................78 D.4 D/A Converter............................79 Index Schematics User’s Manual...
(main oscillator and timekeeping), and the circuitry necessary for reset and management of battery backup of the Rabbit 2000’s internal real-time clock and the static RAM. Two 26-pin headers bring out the Rabbit 2000 I/O bus lines, address lines, data lines, parallel ports, and serial ports.
CMOS inputs and one general CMOS output, and there are two additional inputs and one additional output. Appendix A, “RabbitCore RCM2200 Specifications,” provides detailed specifications for the RCM2200. In addition, three different RCM2200 models are available. A variant of the RCM2200, the RCM2300, omits the Ethernet connectivity but offers a much smaller footprint, one- half the size of the RCM2200.
1.5.1 Additional Product Information In addition to the product-specific information contained in the RabbitCore RCM2200 User’s Manual (this manual), several higher level reference manuals are provided in HTML and PDF form on the accompanying CD-ROM. Advanced users will find these references valuable in developing systems based on the RCM2200 modules: •...
2. G ETTING TARTED This chapter describes the RCM2200 hardware 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 RCM2200 Development Kit. If you purchased an RCM2200 module by itself, you will have to adapt the infor- mation in this chapter and elsewhere to your test and development setup.
Prototyping Board, as shown in Figure 1 below. Align the pins from headers J4 and J5 on the bottom side of the RCM2200 with header sockets J1 and J2 on the Prototyping Board. RCM2200 Line up the mounting holes Prototyping Board Figure 1. Installing the RCM2200 on the Prototyping Board RabbitCore RCM2200...
Although you can install a single module into either the or the position MASTER SLAVE on the Prototyping Board, all the Prototyping Board features (switches, LEDs, serial port drivers, etc.) are connected to the MASTER position. We recommend you install the mod- ule in the MASTER position.
Plug in the AC adapter. The power LED on the Prototyping Board should light up. The RCM2200 and the Prototyping Board are now ready to be used. NOTE: A RESET button is provided on the Prototyping Board to allow hardware reset without disconnecting power. RabbitCore RCM2200...
STDIO square bouncing around in a box. 2.2.1 Troubleshooting If Dynamic C cannot find the target system (error message "No Rabbit Processor Detected." • Check that the RCM2200 is powered correctly — the red power LED on the Prototyping Board should be lit when the RCM2200 is mounted on the Prototyping Board and the AC adapter is plugged in •...
1. Run all of the sample programs described in Chapter 3 to get a basic familiarity with Dynamic C and the RCM2200 module’s capabilities. 2. For further development, refer to the RabbitCore RCM2200 User’s Manual for details of the module’s hardware and software components.
3. R UNNING AMPLE ROGRAMS To develop and debug programs for the RCM2200 (and for all other Rabbit hardware), you must install and use Dynamic C. This chapter for the provides a tour of the sample programs RCM2200. 3.1 Sample Programs To help familiarize you with the RCM2200 modules, several sample Dynamic C programs have been included.
Press switch S3 on the Prototyping Board (which is connected to PB3) to toggle LED DS3 on the Prototyping Board (which is controlled by PE7) on and off. The pushbutton switch is debounced by the software. RabbitCore RCM2200...
Page 19
—demonstrates a simple setup for a 2 × 6 keypad and a 2 × 20 LCD. • KEYLCD.C Connect the keypad to Parallel Ports B, C, and D. PB0—Keypad Col 0 RCM2200/RCM2300 PC1—Keypad Col 1 Prototyping Board Keypad PB2—Keypad Col 2 10 kW resistors PB3—Keypad Col 3...
This program writes a null terminated string over Serial Port B. Use a serial utility such as HyperTerminal or Tera Term to view the string. Use the following configuration for your serial utility. 19200 Bits per second: Data bits: 8 Parity: None Stop bits: 1 Flow control: None RabbitCore RCM2200...
, are available to illustrate RS-485 master/ MASTER.C SLAVE.C slave communication. To run these sample programs, you will need a second Rabbit-based system with RS-485, and you will also have to add an RS-485 transceiver such as the SP483E and bias resistors to the Prototyping Board.
The only new element in this sample application should be Dynamic C’s handling of the Rabbit microprocessor’s parallel ports. The program: 4. Initializes the pins of Port A as outputs. 5. Sets all of the pins of Port A high, turning off the attached LEDs.
3.1.4.2 FLASHLEDS.C In addition to Dynamic C’s implementation of C-language programming for embedded systems, it supports assembly-language programming for very efficient processor-level control of the module hardware and program flow. This application is similar to , but uses assembly language for the low-level port con- FLASHLED.C TOGGLELED.C trol within cofunctions, another powerful multitasking tool.
The ability of Dynamic C to manage state machine programs enables you to create very powerful and efficient embedded systems with much greater ease than other programming methods. More Information See the entries for the function, as well as Section 5, “Multitasking with DelayMs() Dynamic C,” in the Dynamic C User’s Manual. RabbitCore RCM2200...
4. H ARDWARE EFERENCE Chapter 2 describes the hardware components and principal hardware subsystems of the RCM2200. Appendix A, “RabbitCore RCM2200 Specifications,” provides complete physical and electrical specifica- tions. 4.1 RCM2200 Digital Inputs and Outputs Figure 4 shows the subsystems designed into the RCM2200.
Figure 5. RCM2200 I/O Pinouts 4.1.1 Dedicated Inputs PB0 is a general CMOS input when the Rabbit 2000 is either not using Serial Port B or is using Serial Port B in an asynchronous mode. Four other general CMOS input-only pins are located on PB2–PB5.
Page 27
I4 control or INT0B input Bitwise or parallel programmable I/O I5 control or INT1B input Ethernet active (ACT) LED indicator Bitwise or parallel I7 control or slave port programmable I/O chip select /SCS 23–26 A[3:0] Rabbit 2000 address bus User’s Manual...
3 V battery input 4.1.4 Other Inputs and Outputs As shown in Table 1, pins PA0–PA7 can be used to allow the Rabbit 2000 to be a slave to another processor. The slave port also uses PB2–PB5, PB7, and PE7.
Either of the two communicating devices can supply the clock. When the Rabbit 2000 provides the clock, the baud rate can be up to 80% of the system clock frequency divided by 128, or 138,240 bps for a 22.1 MHz clock speed.
3. It can also serve as a general-purpose CMOS 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.
RCM2200, 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...
RCM2200 module to protect against inadvertent shorts across the pins or damage to the RCM2200 if the pins are not plugged in correctly. Do not reapply power until you have verified that the RCM2200 module is plugged in correctly. RabbitCore RCM2200...
The RCM2200 is also designed to accept 128K to 512K of flash EPROM packaged in a TSOP case. NOTE: Rabbit recommends that any customer applications should not be constrained by the sector size of the flash EPROM since it may be necessary to change the sector size in the future.
4.5 Other Hardware 4.5.1 Clock Doubler The RCM2200 takes advantage of the Rabbit 2000 microprocessor’s internal clock dou- bler. 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.
There is no spectrum spreader functionality for RCM2200 RabbitCore modules that have a Rabbit 2000 microprocessor labeled IQ1T, IQ2T, or IQ3T, or when using any RCM2200 with a version of Dynamic C prior to 7.30.
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 single-board computers and other single-board computers based on the Rabbit microprocessor. Chapter 4 provides the libraries and function calls related to the RCM2200.
Page 38
LCD display and keypad drivers. • Powerful language extensions for cooperative or preemptive multitasking. • Loader utility program to load binary images into Rabbit 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”...
The PCLK output is controlled by bits 7 and 6 of the Global Output Register (GOCR) on the Rabbit 2000 microprocessor, and so can be enabled or disabled in software. Starting with Dynamic C v 7.02, the PCLK output is disabled by default at compile time to mini- mize radiated emissions;...
For more information, see the Dynamic C User’s Manual and Technical Note 213, Rabbit 2000 Serial Port Software. 5.4 TCP/IP Drivers The TCP/IP drivers are located in the directory.
The default installation of a patch or bug fix is to install the file in a directory (folder) dif- ferent from that of the original Dynamic C installation. Rabbit recommends using a differ- ent directory so that you can verify the operation of the patch without overwriting the existing Dynamic C installation.
• 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.”...
Page 44
The PC running Dynamic C through the serial port on the RCM2200 does not need to be the PC with the Ethernet card. 3. Apply Power Plug in the AC adapter. The RCM2200 is now ready to be used. RabbitCore RCM2200...
6.2 Running 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 the user connect his PC and the RCM2200 board 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.
Page 46
RCM2200 board. You will also need the IP address of the nameserver, the name or IP address of your mail server, and your domain name for some of the sample programs. RabbitCore RCM2200...
6.3 IP Addresses Explained IP (Internet Protocol) addresses are expressed as 4 decimal numbers separated by periods, for example: 216.103.126.155 10.1.1.6 Each decimal number must be between 0 and 255. The total IP address is a 32-bit number consisting of the 4 bytes expressed as shown above. A local network uses a group of adja- cent IP addresses.
IP addresses are arbitrary and can be allocated as desired provided that they don’t conflict with other IP addresses. However, if they are to be used with the Internet, then they must be numbers that are assigned to your connection by proper authorities, generally by dele- gation via your service provider. RabbitCore RCM2200...
6.5 Dynamically Assigned Internet Addresses In many instances, there are no fixed IP addresses. This is the case when, for example, you are assigned an IP address dynamically by your dial-up Internet service provider (ISP) or when you have a device that provides your IP addresses using the Dynamic Host Configu- ration Protocol (DHCP).
You can either place the RCM2200 directly on the Internet with a real Internet address or place it behind the firewall. If you place the RCM2200 behind the fire- wall, you need to configure the firewall to translate and forward packets from the Internet to the RCM2200. RabbitCore RCM2200...
6.7 How to Set IP Addresses in the 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 Coyote together on the same network. This network can be a local private network (pre- ferred for initial experimentation and debugging), or a connection via the Internet.
IP Address : 10.10.6.101 Netmask : 255.255.255.0 Default gateway : 10.10.6.1 4. Click <OK> <Close> to exit the various dialog boxes. RCM2200 IP 10.10.6.101 Board Netmask 255.255.255.0 User’s PC CAT 5/6 Ethernet crossover cable Direct Connection PC to RCM2200 Board RabbitCore RCM2200...
Web server of the RCM2200 board it is connected to via Serial Port D. This program is run in conjunction with CONSOLE.C —Demonstrates the ability of a Rabbit-based target board to update files • SPCLIENT.C on the Web server of the RCM2200 board it is connected to via the slave port. This pro- gram is run in conjunction with CONSOLE.C...
6.11 Where Do I Go From Here? NOTE: If you purchased your RCM2200 through a distributor or through a Rabbit partner, contact the distributor or partner first for technical support. If there are any problems at this point: • Use the Dynamic C menu to get further assistance with Dynamic C.
Y1 C4 EGND 0.602 0.625 (15.3) (15.7) 2.300 (58.4) 1.600 (40.6) Figure A-1. RCM2200 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). RabbitCore RCM2200...
Page 57
It is recommended that you allow for an “exclusion zone” of 0.04" (1 mm) around the RCM2200 in all directions when the RCM2200 is incorporated into an assembly that includes other printed circuit boards. An “exclusion zone” of 0.16" (4 mm) is recom- mended below the RCM2200 when the RCM2200 is plugged into another assembly using the shortest connectors for headers J4 and J5.
Page 58
Maximum sustained rate = CLK/64 A slave port allows the RCM2200 to be used as an intelligent peripheral Slave Interface device slaved to a master processor, which may either be another Rabbit 2000 or any other type of processor Real-Time Clock...
A.1.1 Headers The RCM2200 uses headers at J4 and J5 for physical connection to other boards. J4 and J5 are 2 × 13 SMT headers with a 2 mm pin spacing. J1, the programming port, is a 2 × 5 header with a 2 mm pin spacing.
You must pay careful attention to bus loading when designing an interface to the RCM2200. This section provides bus loading information for external devices. Table A-2 lists the capacitance for the various RCM2200 I/O ports. Table A-2. Capacitance of Rabbit 2000 I/O Ports Input Output...
Page 61
Figure A-4 shows a typical timing diagram for the Rabbit 2000 microprocessor external I/O read and write cycles. External I/O Read (no extra wait states) A[15:0] valid T adr /CSx T CSx T CSx /IOCSx T IOCSx T IOCSx /IORD...
/IOWR A.3 Rabbit 2000 DC Characteristics Table A-4 outlines the DC characteristics for the Rabbit 2000 at 5.0 V over the recom- mended operating temperature range from T = –40°C to +85°C, V = 4.5 V to 5.5 V.
A.4 I/O Buffer Sourcing and Sinking Limit Unless otherwise specified, the Rabbit I/O buffers are capable of sourcing and sinking 8 mA of current per pin at full AC switching speed. Full AC switching assumes a 25.8 MHz CPU clock and capacitive loading on address and data lines of less than 100 pF per pin.
A.6 Conformal Coating The areas around the 32 kHz real-time clock crystal oscillator has had the Dow Corning silicone-based 1-2620 conformal coating applied. The conformally coated area is shown in Figure A-6. The conformal coating protects these high-impedance circuits from the effects of moisture and contaminants over time.
B. P PPENDIX ROTOTYPING OARD Appendix B describes the features and accessories of the Proto- typing Board, and explains the use of the Prototyping Board to demonstrate the RCM2200 and to build prototypes of your own circuits. User’s Manual...
B.1.1 Prototyping Board Features —A 3-pin header is provided for connection to the power supply. Power Connection • Note that it is symmetrical, with both outer pins connected to ground and the center pin connected to the raw V+ input. The cable of the wall transformer provided with the North American version of the development kit ends in a connector that is correctly connected in either orientation.
The Prototyping Board comes with several unpopulated areas, which may be filled with components to suit the user’s development needs. After you have experimented with the sample programs from the RabbitCore RCM2200 User’s Manual, you may wish to expand the board’s capabilities for further experimentation and development. Refer to the Prototyping Board schematic (090–0122) for details as necessary.
B.2 Mechanical Dimensions and Layout Figure B-2 shows the mechanical dimensions and layout for the RCM2200 Prototyping Board. 5.25 (133) Figure B-2. RCM2200 Prototyping Board Dimensions Table B-1 lists the electrical, mechanical, and environmental specifications for the Proto- typing Board. Table B-1.
RCM2200. Two LEDs (DS2 and DS3) are connected to PE1 and PE7, and two switches (S2 and S3) are connected to PB2 and PB3 to demonstrate the interface to the Rabbit 2000 microprocessor. Reset switch S1 is the hardware reset for the RCM2200. RabbitCore RCM2200...
Page 73
To maximize the availability of RCM2200 resources, the demonstration hardware (LEDs and switches) on the Prototyping Board may be disconnected. This is done by cutting the traces below the silk-screen outline of header JP1 on the bottom side of the Prototyping Board.
Page 74
VCC and GND traces run along the edge of the Prototyping Board for easy access. A GND pad is also provided at the lower right for alligator clips or probes. VCC trace GND trace GND pad Figure B-6. VCC and GND Traces Along Edge of Prototyping Board RabbitCore RCM2200...
B.4.1 Adding Other Components There is room on the Prototyping Board for a user-supplied RS-232 transceiver chip at location U2 and a 10-pin header for serial interfacing to external devices at location J6. A Maxim MAX232 transceiver is recommended. When adding the MAX232 transceiver at position U2, you must also add 100 nF charge storage capacitors at positions C3–C7 as shown in Figure B-7.
The RCM2200 does not have a battery, but there is provision for a customer-supplied bat- tery to back up SRAM and keep the internal Rabbit 2000 real-time clock running. Header J5, shown in Figure C-1, allows access to the external battery. This header makes it possible to connect an external 3 V power supply.
Figure C-2. RCM2200 Battery-Backup Circuit C.1.2 Reset Generator The RCM2200 uses a reset generator, U1, 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 RCM2200 has a reset output, pin 9 on header J5.
C.2 Chip Select Circuit The RCM2200 has provision for battery backup, which kicks in to keep VRAM from dropping below 2 V. When the RCM2200 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.
D. S PPENDIX AMPLE IRCUITS This appendix details several basic sample circuits that can be used with the RCM2200 modules. • RS-232/RS-485 Serial Communication • Keypad and LCD Connections • External Memory • D/A Converter User’s Manual...
D.3 External Memory The sample circuit can be used with an external 64K memory device. Larger SRAMs can be written to using this scheme by using other available Rabbit 2000 ports (parallel ports A to E) as address lines. SRAM...
D.4 D/A Converter The output will initially be 0 V to -10.05 V after the first inverting op-amp, and 0 V to +10.05 V after the second inverting op-amp. All lows produce 0 V out, FF produces 10 V out. The output can be scaled by changing the feedback resistors on the op-amps. For example, changing 5.11 kΩ...
CHEMATICS 090-0120 RCM2200 Schematic www.rabbit.com/documentation/schemat/090-0120.pdf 090-0122 RCM2200 Prototyping Board Schematic www.rabbit.com/documentation/schemat/090-0122.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. Getting Started...
Need help?
Do you have a question about the RabbitCore RCM2200 and is the answer not in the manual?
Questions and answers