Rabbit RabbitCore RCM4200 User Manual

C-programmable analog core module with serial flash and etherne
Table of Contents

Advertisement

Quick Links

RabbitCore RCM4200
C-Programmable Analog Core Module
with Serial Flash and Ethernet
User's Manual
019–0159 • 090508–E

Advertisement

Table of Contents
loading

Summary of Contents for Rabbit RabbitCore RCM4200

  • Page 1 RabbitCore RCM4200 C-Programmable Analog Core Module with Serial Flash and Ethernet User’s Manual 019–0159 • 090508–E...
  • Page 2 Rabbit, RabbitCore, and Dynamic C are registered trademarks of Digi International Inc. Rabbit 4000 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.
  • Page 3: Table Of Contents

    ABLE OF ONTENTS Chapter 1. Introduction 1.1 RCM4200 Features ..........................2 1.2 Advantages of the RCM4200 .......................4 1.3 Development and Evaluation Tools......................5 1.3.1 RCM4200 Development Kit ......................5 1.3.2 Software ............................6 1.3.3 Online Documentation ........................6 Chapter 2. Getting Started 2.1 Install Dynamic C ..........................7 2.2 Hardware Connections..........................8 2.2.1 Step 1 —...
  • Page 4 A.1 Electrical and Mechanical Characteristics ..................88 A.1.1 A/D Converter ........................... 92 A.1.2 Headers ............................93 A.2 Rabbit 4000 DC Characteristics ......................94 A.3 I/O Buffer Sourcing and Sinking Limit..................... 95 A.4 Bus Loading ............................95 A.5 Conformal Coating ..........................98 A.6 Jumper Configurations ........................
  • Page 5 B.4 Using the Prototyping Board......................107 B.4.1 Adding Other Components.......................109 B.4.2 Measuring Current Draw......................109 B.4.3 Analog Features (RCM4200 only) ...................110 B.4.3.1 A/D Converter Inputs ...................... 110 B.4.3.2 Thermistor Input ......................112 B.4.3.3 A/D Converter Calibration ....................112 B.4.4 Serial Communication ......................113 B.4.4.1 RS-232 ..........................
  • Page 6 RabbitCore RCM4200...
  • Page 7: Chapter 1. Introduction

    (main oscillator and timekeeping), and the circuitry necessary for reset and man- agement of battery backup of the Rabbit 4000’s internal real-time clock and 512K of static RAM. One 50-pin header brings out the Rabbit 4000 I/O bus lines, parallel ports, A/D converter channels, and serial ports.
  • Page 8: Rcm4200 Features

    • Small size: 1.84" × 2.42" × 0.84" (47 mm × 61 mm × 21 mm) • Microprocessor: Rabbit 4000 running at up to 58.98 MHz • Up to 33 general-purpose I/O lines configurable with up to four alternate functions •...
  • Page 9 The RCM4200 is programmed over a standard PC USB port through a programming cable supplied with the Development Kit. NOTE: The RabbitLink cannot be used to program RabbitCore modules based on the Rabbit 4000 microprocessor. Appendix A provides detailed specifications for the RCM4200. User’s Manual...
  • Page 10: Advantages Of The Rcm4200

    • Easy C-language program development and debugging • Rabbit Field Utility to download compiled Dynamic C .bin files, and cloning board options for rapid production loading of programs. • Generous memory size allows large programs with tens of thousands of lines of code, and substantial data storage.
  • Page 11: Development And Evaluation Tools

    RCM4200 RabbitCore module models. RX97 RX59 RX49 RX55 RX57 RX75 RX73 CX27 VREF AGND Rabbit and Dynamic C are registered trademarks of Rabbit Semiconductor Inc. CX25 CX23 RX77 RX79 JP25 UX16 Getting Started Prototyping Board Instructions Figure 1. RCM4200 Development Kit User’s Manual...
  • Page 12: Software

    A compatible version is included on the Development Kit CD-ROM. Rabbit Semiconductor also offers add-on Dynamic C modules containing the popular µC/OS-II real-time operating system, the FAT file 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 telephone-based technical support module is also available for purchase.
  • Page 13: Chapter 2. Getting Started

    One icon is for Dynamic C, another opens the documentation menu, and the third is for the Rabbit Field Utility, a tool used to download precompiled software to a target system. If you have purchased any of the optional Dynamic C modules, install them after installing Dynamic C.
  • Page 14: Hardware Connections

    RX81 RCM1 /IOWR /RST_IN VBAT JP16 RX83 JP12 JP14 UX30 JP18 RX11 JP10 UX10 RX67 UX12 RX43 UX14 RX97 RX59 RX75 RX49 RX55 RX57 RX73 CX27 VREF AGND CX25 CX23 RX77 RX79 UX16 JP25 Figure 2. Insert Standoffs RabbitCore RCM4200...
  • Page 15: Step 2 - Attach Module To Prototyping Board

    2.2.2 Step 2 — Attach Module to Prototyping Board Turn the RCM4200 module so that the mounting holes line up with the corresponding holes on the Prototyping Board. Insert the metal standoffs as shown in Figure 3, secure them from the bottom using two screws and washers, then insert the module’s header J2 on the bottom side into socket RCM1 on the Prototyping Board.
  • Page 16: Step 3 - Connect Programming Cable

    NOTE: Either a serial or a USB programming cable was supplied with the Development Kit. If you have a serial programming cable, an RS-232/USB converter (Rabbit Part No. 20-151-0178) is available to allow you to use the serial programming cable with a USB port.
  • Page 17: Step 4 - Connect Power

    LEDs in the shrink-wrapped area of the programming cable will flash — if you get an error message, you will have to install USB drivers. Drivers for Windows XP are available in the Dynamic C Drivers\Rabbit USB Programming Cable\ folder — double-click to install the USB drivers. Drivers for WinXP_2K DPInst.exe...
  • Page 18: Run A Sample Program

    2.3.1 Troubleshooting 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 to see that the power LED on the Prototyping Board is lit.
  • Page 19: Where Do I Go From Here

    For advanced development topics, refer to the Dynamic C User’s Manual, also in the online documentation set. 2.4.1 Technical Support NOTE: If you purchased your RCM4200 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: •...
  • Page 20 RabbitCore RCM4200...
  • Page 21: Chapter 3. Running Sample Programs

    AMPLE ROGRAMS To develop and debug programs for the RCM4200 (and for all other Rabbit Semiconductor hardware), you must install and use Dynamic C. This chapter provides a tour of its major features with respect to the RCM4200. 3.1 Introduction To help familiarize you with the RCM4200 modules, Dynamic C includes several sample programs.
  • Page 22: Sample Programs

    —demonstrates the use of cofunctions and costatements to flash LEDs • FLASHLED2.C DS2 and DS3 on the Prototyping Board at different rates. Once you have compiled and run this program, LEDs DS2 and DS3 will flash on/off at different rates. RabbitCore RCM4200...
  • Page 23 TAMPERDETECTION.C mode. When an attempt is detected, the battery-backed onchip-encryption RAM on the Rabbit 4000 is erased. This battery-backed onchip-encryption RAM can be useful to store data such as an AES encryption key from a remote location. This sample program shows how to load and read the battery-backed onchip-encryption RAM and how to enable a visual indicator.
  • Page 24: Use Of Serial Flash

    (set to zero) all the bytes in a speci- fied page, set all bytes on the specified page to a given value, or save user-specified text to a selected page. RabbitCore RCM4200...
  • Page 25: Serial Communication

    3.2.2 Serial Communication The following sample programs are found in the folder. SAMPLES\RCM4200\SERIAL —This program demonstrates how to configure Serial Port D for • FLOWCONTROL.C CTS/RTS flow control with serial data coming from Serial Port C (TxC) at 115,200 bps. The serial data received are displayed in the STDIO window.
  • Page 26 TxD RxD shown in the diagram. Once you have compiled and run this program, press and release switches S2 and S3 on the Prototyping Board. The data sent between the serial ports will be displayed in the STDIO window. RabbitCore RCM4200...
  • Page 27 STDIO Note that the I/O lines that carry the Serial Port E signals are not the Rabbit 4000 defaults. The Serial Port E I/O lines are configured by calling the library function that was generated by the Rabbit 4000...
  • Page 28: A/D Converter Inputs (Rcm4200 Only)

    If you attach a voltmeter between the analog input and ground, you will be able to observe that the voltage in the Dynamic C STDIO window tracks the voltage applied to the analog input as you vary it. RabbitCore RCM4200...
  • Page 29: Downloading And Uploading Calibration Constants

    —Demonstrates how to use analog input LN7 to calculate temperature • THERMISTOR.C for display to the Dynamic C STDIO window. This sample program assumes that the thermistor is the one included in the Development Kit whose values for beta, series resistance, and resistance at standard temperature are given in the part specification.
  • Page 30 Open your data file and verify that the calibration data have been written properly. A sample is shown below. Serial port transmission ======================== Uploading calibration table . . . Enter the serial number of your controller = 9MN234 SN9MN234 ADSE float_gain,float_offset,float_gain,float_offset,float_gain,float_offset,float_gain,float_offset, float_gain,float_offset,float_gain,float_offset,float_gain,float_offset,float_gain,float_offset, float_gain,float_offset,float_gain,float_offset,float_gain,float_offset,float_gain,float_offset, float_gain,float_offset,float_gain,float_offset,float_gain,float_offset,float_gain,float_offset, ADDF float_gain,float_offset,float_gain,float_offset,float_gain,float_offset,float_gain,float_offset, float_gain,float_offset,float_gain,float_offset,float_gain,float_offset,float_gain,float_offset, float_gain,float_offset,float_gain,float_offset,float_gain,float_offset,float_gain,float_offset, float_gain,float_offset,float_gain,float_offset,float_gain,float_offset,float_gain,float_offset, ADMA float_gain,float_offset, float_gain,float_offset, RabbitCore RCM4200...
  • Page 31: Real-Time Clock

    3.2.4 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. Set the real-time clock using the sample program from SETRTCKB.C the Dynamic C folder, using the onscreen prompts. The SAMPLES\RTCLOCK sample program in the Dynamic C folder provides...
  • Page 32 RabbitCore RCM4200...
  • Page 33: Chapter 4. Hardware Reference

    EFERENCE Chapter 4 describes the hardware components and principal hardware subsystems of the RCM4200. Appendix A, “RCM4200 Specifica- tions,” provides complete physical and electrical specifications. Figure 5 shows the Rabbit-based subsystems designed into the RCM4200. 32 kHz 58.98 MHz Ethernet...
  • Page 34: Rcm4200 Digital Inputs And Outputs

    VREF n.c. = not connected Note: These pinouts are as seen on the Bottom Side of the module. Figure 6. RCM4200 Pinout standard 2 × 25 IDC header with a nominal 1.27 mm pitch. Headers J2 is a RabbitCore RCM4200...
  • Page 35 Figure 7 shows the use of the Rabbit 4000 microprocessor ports in the RCM4200 modules. PB2–PB7 PD0–PD7 PA0–PA7 Port D Port A Port B (RCM4210 only) PC0, PC2 Port C Port E PE0–PE7 ABBIT ® (Serial Ports C & D)
  • Page 36 External I/O Address IA7 /SWR Input/Output External I/O Address IA0 /SRD Input/Output External I/O Address IA1 Input/Output External I/O Address IA2 Input/Output External I/O Address IA3 /SCS Input/Output External I/O Address IA4 /SLAVATN Input/Output External I/O Address IA5 RabbitCore RCM4200...
  • Page 37 Table 2. RCM4200 Pinout Configurations (continued) Pin Name Default Use Alternate Use Notes I/O Strobe I0 Input/Output Timer C0 TCLKF Serial Port D RXD/TXD I/O Strobe I1 Input/Output Timer C1 RCLKF Input Capture TXC/TXF Input/Output I/O Strobe I2 Timer C2 Serial Port C (shared by RXC/TXC/RXF serial flash)
  • Page 38 PE5 is the default PE5/SMODE0 Input/Output PWM1 configuration RXB/RCLKE Input Capture I/O Strobe I6 PWM2 PE6 is the default PE6/SMODE1 Input/Output configuration DREQ0 I/O Strobe I7 PWM3 PE7 (SCLKC) is the PE7/STATUS Input/Output RXA/RXE/SCLKC default configuration DREQ1 Input Capture RabbitCore RCM4200...
  • Page 39 Table 2. RCM4200 Pinout Configurations (continued) Pin Name Default Use Alternate Use Notes A/D converter 40–47 LN[0:7] Analog Input (RCM4200 only) I/O Strobe I0 Timer C0 Input/Output INT0 SCLKD/TCLKF QRD1B RCM4210 only I/O Strobe I1 Timer C1 Input/Output INT1 RXD/RCLKF QRD1A Input Capture I/O Strobe I2...
  • Page 40: Memory I/O Interface

    Analog ground 4.1.1 Memory I/O Interface The Rabbit 4000 address lines (A0–A19) and all the data lines (D0–D7) are routed inter- nally to the onboard flash memory and SRAM chips. I/0 write (/IOWR) and I/0 read (/IORD) are available for interfacing to external devices, and are also used by the RCM4200.
  • Page 41: Serial Communication

    4.2 Serial Communication The RCM4200 module does not have any serial driver or receiver chips directly on the board. However, a serial interface may be incorporated on the board the RCM4200 is mounted on. For example, the Prototyping Board has an RS-232 transceiver chip. 4.2.1 Serial Ports There are five serial ports designated as Serial Ports A, B, C, D, and E.
  • Page 42: Using The Serial Ports

    Table 3 summarizes the possible parallel port pins for the serial ports and their clocks. Table 3. Rabbit 4000 Serial Port and Clock Pins PC6, PC7, PD6 PC0, PC1 Serial Port A (program- PC7, PD7, PE7 Serial Port D PC1, PD1, PE1...
  • Page 43: Ethernet Port

    4.2.2 Ethernet Port Figure 8 shows the pinout for the RJ-45 Ethernet port (J3). Note that some Ethernet con- nectors are numbered in reverse to the order used here. ETHERNET 1. E_Tx+ 2. E_Tx– 3. E_Rx+ 6. E_Rx– RJ-45 Plug RJ-45 Jack Figure 8.
  • Page 44: Programming Port

    The two startup-mode pins determine what happens after a reset—the Rabbit 4000 is either cold-booted or the program begins executing at address 0x0000. 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.
  • Page 45: Programming Cable

    PROG gramming cable is attached, and is automatically in Run Mode when no programming cable is attached. When the Rabbit 4000 is reset, the operating mode is determined by the status of the SMODE pins. When the programming cable’s connector is attached, PROG the SMODE pins are pulled high, placing the Rabbit 4000 in the Program Mode.
  • Page 46: Standalone Operation Of The Rcm4200

    A program “runs” in either mode, but can only be downloaded and debugged when the RCM4200 is in the Program Mode. Refer to the for more information on the pro- Rabbit 4000 Microprocessor User’s Manual gramming port. 4.3.2 Standalone Operation of the RCM4200 Once the RCM4200 has been programmed successfully, remove the programming cable from the programming connector and reset the RCM4200.
  • Page 47: A/D Converter (Rcm4200 Only)

    RCM4200 module is mounted. The A/D converter multiplexes converted signals from eight single-ended or four differential inputs to Serial Port B on the Rabbit 4000. The eight analog input pins, LN0–LN7, each have an input impedance of 6–7 MΩ, depending on whether they are used as single-ended or differential inputs.
  • Page 48 Figure 12 shows the timing of a conversion start. The double falling arrow on CCLK indicates the actual start of the conversion cycle. Conversion starts CCLK BUSY CONV Figure 12. Timing Diagram for Conversion Start Using CONVERT Pin Appendix B explains the implementation examples of these features on the Prototyping Board. RabbitCore RCM4200...
  • Page 49: A/D Converter Power Supply

    4.4.1 A/D Converter Power Supply The analog section is isolated from digital noise generated by other components by way of a low-pass filter composed of C1, L1, and C86 on the RCM4200 as shown in Figure 13. The +V analog power supply powers the A/D converter chip. +3.3 V 100 nF 100 nF...
  • Page 50: Other Hardware

    4.5.2 Spectrum Spreader The Rabbit 4000 features a spectrum spreader, which helps to mitigate EMI problems. The spectrum spreader is on by default, but it may also be turned off or set to a stronger setting.
  • Page 51: Memory

    4.6.2 Flash EPROM All RCM4200 modules also have 512K of flash EPROM installed at U11. NOTE: Rabbit Semiconductor 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.
  • Page 52 RabbitCore RCM4200...
  • Page 53: Chapter 5. Software Reference

    It runs on an IBM-compatible PC and is designed for use with single-board computers and other devices based on the Rabbit microprocessor. Chapter 5 describes the libraries and function calls related to the RCM4200. 5.1 More About Dynamic C Dynamic C has been in use worldwide since 1989.
  • Page 54 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”...
  • Page 55: Dynamic C Function Calls

    Port E bits as inputs, or use WrPortI(PEDDR, &PEDDRShadow, 0xFF); to set all the Port E bits as outputs. When using the auxiliary I/O bus on the Rabbit 4000 chip, add the line #define PORTA_AUX_IO // required to enable auxiliary I/O bus to the beginning of any programs using the auxiliary I/O bus.
  • Page 56: Sram Use

    User’s Manual. 5.2.4.1 SRAM Chip Select Considerations The basic SRAM memory on Rabbit-based boards is always connected to /CS1, /OE1, and /WE1. Both the data SRAM and the program execution fast SRAM on the RCM4200 share /OE1. The BIOS-defined macro,...
  • Page 57: Rcm4200 Cloning

    Options “Defines” tab, then click OK. When you recompile your program, this will have the same effect as setting the macro to 1 within the CLONECONFIG.LIB library. See Technical Note TN207, Rabbit Cloning Board, for additional information on Rabbit Semiconductor’s cloning board and how cloning is done.
  • Page 58: Prototyping Board Function Calls

    The sample programs in the Dynamic C folder illustrate the use of SAMPLES\RCM4200 the function calls. Other generic functions applicable to all devices based on Rabbit microprocessors are described in the Dynamic C Function Reference Manual. 5.2.7.1 Board Initialization brdInit void brdInit(void);...
  • Page 59: Alerts

    5.2.7.2 Alerts These function calls can be found in the Dynamic C library. LIB\RCM4xxx\RCM4xxx.LIB timedAlert void timedAlert(unsigned long timeout); DESCRIPTION Polls the real-time clock until a timeout occurs. The RCM4200 will be in a low-power mode during this time. Once the timeout occurs, this function call will enable the normal power source.
  • Page 60: Analog Inputs (Rcm4200 Only)

    PC4; 3-wire mode for serial data input Output PC5; serial data output /CS driven Input BUFEN pulled up; active-low enables serial interface BUFIN Input Driven by VREF VREF Output Connected to BUFIN and BUFOUT BUFOUT Output Driven by VREF RabbitCore RCM4200...
  • Page 61 anaInConfig (continued) PARAMETERS instructionbyte the instruction byte that will initiate a read or write operation at 8 or 16 bits on the designated register address. For example, checkid = anaInConfig(0x5F, 0, 9600); // read ID and set byte rate the command data that configure the registers addressed by the in- struction byte.
  • Page 62 D7—1; D6–D4—Gain Code; D3–D0—Channel Code Use the following calculation and the tables below to determine cmd: cmd = 0x80 | (gain_code*16) + channel_code Gain Gain Code Multiplier ×1 ×2 ×4 ×5 ×8 ×10 ×16 ×20 RabbitCore RCM4200...
  • Page 63 anaInDriver (continued) Single-Ended Differential Input 4–20 mA Channel Code Channel Code Lines Lines Input Lines +AIN0 -AIN1 AIN0 AIN0* +AIN2 -AIN3 AIN1 AIN1* +AIN4 -AIN5 AIN2 AIN2* † +AIN6 -AIN7 AIN3 AIN3 -AIN0 +AIN1 AIN4 AIN4 -AIN2 +AIN3 AIN5 AIN5 -AIN4 +AIN5 AIN6 AIN6...
  • Page 64 * Not accessible on Prototyping Board. the gain code of 0 to 7 (applies only to Prototyping Board): gaincode Gain Voltage Range Gain Code Multiplier ×1 0–22.5 ×2 0–11.25 ×4 0–5.6 ×5 0–4.5 ×8 0–2.8 ×10 0–2.25 ×16 0–1.41 ×20 0–1.126 RabbitCore RCM4200...
  • Page 65 anaIn (continued) RETURN VALUE A value corresponding to the voltage on the analog input channel: 0–2047 for single-ended conversions -2048–2047 for differential conversions ADTIMEOUT (-4095) if the conversion is incomplete or busy bit timeout ADOVERFLOW (-4096) for overflow or out of range SEE ALSO anaIn, anaInConfig, anaInDriver User’s Manual...
  • Page 66 +AIN0 +AIN0 -AIN1 +AIN0 +AIN1 +AIN1 -AIN0* +AIN1* +AIN2 +AIN2 -AIN3 +AIN2* +AIN3 +AIN3 -AIN2* +AIN3 +AIN4 +AIN4 -AIN5 +AIN4 +AIN5 +AIN5 -AIN4* +AIN5 +AIN6 +AIN6 -AIN7* +AIN6 +AIN7 +AIN7 -AIN6* +AIN7* * Not accessible on Prototyping Board. RabbitCore RCM4200...
  • Page 67 anaInCalib (continued) the gain code of 0 to 7 (applies only to Prototyping Board): gaincode Gain Voltage Range Gain Code Multiplier ×1 0–22.5 ×2 0–11.25 ×4 0–5.6 ×5 0–4.5 ×8 0–2.8 ×10 0–2.25 ×16 0–1.41 ×20 0–1.126 the first A/D converter channel raw count value (0–2047) value1 the voltage or current corresponding to the first A/D converter volts1...
  • Page 68 0 to 7 (applies only to Prototyping Board): gaincode Gain Voltage Range Gain Code Multiplier ×1 0–22.5 ×2 0–11.25 ×4 0–5.6 ×5 0–4.5 ×8 0–2.8 ×10 0–2.25 ×16 0–1.41 ×20 0–1.126 * Applies to Prototyping Board. RabbitCore RCM4200...
  • Page 69 anaInVolts (continued) RETURN VALUE A voltage value corresponding to the voltage on the analog input channel. ADTIMEOUT (-4095) if the conversion is incomplete or busy bit timeout. ADOVERFLOW (-4096) for overflow or out of range. SEE ALSO anaInCalib, anaIn, anaInmAmps, brdInit User’s Manual...
  • Page 70 Gain Voltage Range Gain Code Multiplier ×1 -22.5 – +22.5 ×2 -11.25 – +11.25 ×4 -5.6 – +5.6 ×5 -4.5 – +4.5 ×8 -2.8 – +2.8 ×10 -2.25 – +2.25 ×16 -1.41 – +1.41 ×20 -1.126 – +1.126 RabbitCore RCM4200...
  • Page 71 anaInDiff (continued) RETURN VALUE A voltage value corresponding to the voltage differential on the analog input channel. ADTIMEOUT (-4095) if the conversion is incomplete or busy bit timeout. ADOVERFLOW (-4096) for overflow or out of range. SEE ALSO anaInCalib, anaIn, anaInmAmps, brdInit User’s Manual...
  • Page 72 A current value between 4.00 and 20.00 mA corresponding to the current on the analog input channel. ADTIMEOUT (-4095) if the conversion is incomplete or busy bit timeout. ADOVERFLOW (-4096) for overflow or out of range. SEE ALSO anaInCalib, anaIn, anaInVolts RabbitCore RCM4200...
  • Page 73 anaInEERd root int anaInEERd(unsigned int channel, unsigned int opmode, unsigned int gaincode); DESCRIPTION Reads the calibration constants, gain, and offset for an input based on their designated position in the flash memory, and places them into global tables _adcCalibS, _adcCalibD, and _adcCalibM for analog inputs. Depending on the flash size, the following macros can be used to identify the starting address for these locations.
  • Page 74 0–22.5 ×2 0–11.25 ×4 0–5.6 ×5 0–4.5 ×8 0–2.8 ×10 0–2.25 ×16 0–1.41 ×20 0–1.126 * Applies to Prototyping Board. RETURN VALUE 0 if successful. -1 if address is invalid or out of range. SEE ALSO anaInEEWr, anaInCalib RabbitCore RCM4200...
  • Page 75 anaInEEWr int anaInEEWr(unsigned int channel, int opmode, unsigned int gaincode); DESCRIPTION Writes the calibration constants, gain, and offset for an input based from global tables _adcCalibS, _adcCalibD, and _adcCalibM to designated positions in the flash memory. Depending on the flash size, the following macros can be used to identify the starting address for these locations.
  • Page 76 0–22.5 ×2 0–11.25 ×4 0–5.6 ×5 0–4.5 ×8 0–2.8 ×10 0–2.25 ×16 0–1.41 ×20 0–1.126 * Applies to Prototyping Board. RETURN VALUE 0 if successful -1 if address is invalid or out of range. SEE ALSO anaInEEWr, anaInCalib RabbitCore RCM4200...
  • Page 77: Upgrading Dynamic C

    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. Rabbit Semiconductor offers for purchase add-on Dynamic C modules including the popular µC/OS-II real-time operating system, as well as PPP, Advanced Encryption Standard (AES), FAT file system, Rabbit- Web, and other select libraries.
  • Page 78 RabbitCore RCM4200...
  • Page 79: Chapter 6. Using The Tcp/Ip Features

    Cable Figure 14. How to Identify Straight-Through and Crossover Ethernet Cables Ethernet cables and a 10Base-T Ethernet hub are available from Rabbit Semiconductor in a TCP/IP tool kit. More information is available at www.rabbit.com. Now you should be able to make your connections.
  • Page 80 LAN or WAN. The PC running Dynamic C does not need to be the PC with the Ethernet card. 3. Apply Power Plug in the AC adapter. The RCM4200 module and Prototyping Board are now ready to be used. RabbitCore RCM4200...
  • Page 81: Tcp/Ip Primer On Ip Addresses

    6.2 TCP/IP Primer on IP Addresses Obtaining IP addresses to interact over an existing, operating, network can involve a num- ber of complications, and must usually be done with cooperation from your ISP and/or network systems administrator. For this reason, it is suggested that the user begin instead by using a direct connection between a PC and the RCM4200 using an Ethernet crossover cable or a simple arrangement with a hub.
  • Page 82 RCM4200. 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 RCM4200...
  • Page 83: Ip Addresses Explained

    6.2.1 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.
  • Page 84: How Ip Addresses Are Used

    0090C2 followed by a code that is unique to each RCM4200 module. For exam- ple, a MAC address might be 0090C2C002C0. TIP: You can always obtain the MAC address on your module by running the sample program DISPLAY_MAC.C from the SAMPLES\TCPIP folder. RabbitCore RCM4200...
  • Page 85: Dynamically Assigned Internet Addresses

    6.2.3 Dynamically Assigned Internet Addresses In many instances, devices on a network do not have 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 Configuration Protocol (DHCP).
  • Page 86: Placing Your Device On The Network

    You can either place the RCM4200 directly on the Internet with a real Internet address or place it behind the firewall. If you place the RCM4200 behind the fire- wall, you need to configure the firewall to translate and forward packets from the Internet to the RCM4200. RabbitCore RCM4200...
  • Page 87: Running Tcp/Ip Sample Programs

    6.4 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 you to connect your PC and the RCM4200 module together on the same network. This network can be a local private net- work (preferred for initial experimentation and debugging), or a connection via the Internet.
  • Page 88: How To Set Ip Addresses In The Sample Programs

    TCPCONFIG ent features such as DHCP. Their values are documented at the top of the TCP_CON- library in the directory. More information is available in the FIG.LIB LIB\TCPIP Dynamic C TCP/IP User’s Manual. RabbitCore RCM4200...
  • Page 89: How To Set Up Your Computer For Direct Connect

    6.4.2 How to Set Up your Computer for Direct Connect Follow these instructions to set up your PC or notebook. Check with your administrator if you are unable to change the settings as described here since you may need administrator privileges.
  • Page 90: Run The Pingme.c Sample Program

    —This program demonstrates using the SMTP library to send an e-mail when • SMTP.C the S2 and S3 switches on the Prototyping Board are pressed. LEDs DS2 and DS3 on the Prototyping Board will light up when e-mail is being sent. RabbitCore RCM4200...
  • Page 91: Where Do I Go From Here

    6.7 Where Do I Go From Here? NOTE: If you purchased your RCM4200 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.
  • Page 92 RabbitCore RCM4200...
  • Page 93: Appendix A. Rcm4200 Specifications

    A. RCM4200 S PPENDIX PECIFICATIONS Appendix A provides the specifications for the RCM4200, and describes the conformal coating. User’s Manual...
  • Page 94: Electrical And Mechanical Characteristics

    0.72 0.62 0.10 0.50 (18) (16) (2.5) (13) 2.42 (61) 1.84 (47) Figure A-1. RCM4200 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 RCM4200...
  • Page 95 It is recommended that you allow for an “exclusion zone” of 0.04" (1 mm) around the RCM4200 in all directions when the RCM4200 is incorporated into an assembly that includes other printed circuit boards. An “exclusion zone” of 0.08" (2 mm) is recom- mended below the RCM4200 when the RCM4200 is plugged into another assembly.
  • Page 96 1 clocked serial port shared with Serial Ports shared with programming port serial flash • • 1 clocked serial port shared with 1 asynchronous clocked serial port serial flash dedicated for programming • 1 clocked serial port shared with A/D converter RabbitCore RCM4200...
  • Page 97 Table A-1. RCM4200 Specifications (continued) Parameter RCM4200 RCM4210 Serial Rate Maximum asynchronous baud rate = CLK/8 Slave port allows the RCM4200 to be used as an intelligent peripheral device Slave Interface slaved to a master processor Real Time Clock Ten 8-bit timers (6 cascadable from the first), Timers one 10-bit timer with 2 match registers, and one 16-bit timer with 4 outputs and 8 set/reset registers...
  • Page 98: A/D Converter

    ±2.5 LSB Differential Linearity ±0.5 LSB Dynamic Characteristics Throughput Rate 52 ksamples/s Voltage Reference = 2.048 V and 2.5 V Accuracy ±0.05% ±0.25% Buffer Amp Source Current 20 mA Buffer Amp Sink Current 200 µA Short-Circuit Current 20 mA RabbitCore RCM4200...
  • Page 99: Headers

    A.1.2 Headers The RCM4200 uses a header at J2 for physical connection to other boards. J2 is a 2 × 25 SMT header with a 1.27 mm pin spacing. J1, the programming port, is a 2 × 5 header with a 1.27 mm pin spacing.
  • Page 100: Rabbit 4000 Dc Characteristics

    Stresses beyond those listed in Table A-3 may cause permanent damage. The ratings are stress ratings only, and functional operation of the Rabbit 4000 chip at these or any other conditions beyond those indicated in this section is not implied. Exposure to the absolute maximum rating conditions for extended periods may affect the reliability of the Rabbit 4000 chip.
  • Page 101: I/O Buffer Sourcing And Sinking Limit

    A.3 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 29.4 MHz CPU clock with the clock doubler enabled and capacitive loading on address and data lines of less than 70 pF per pin.
  • Page 102 Figure A-4 shows a typical timing diagram for the Rabbit 4000 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...
  • Page 103 The maxi- mum shortening for a pair of clocks combined is shown in the table. Technical Note TN227, Interfacing External I/O with Rabbit Microprocessor Designs, contains suggestions for interfacing I/O devices to the Rabbit 4000 microprocessors. User’s Manual...
  • Page 104: Conformal Coating

    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 Technical Note 303, Con- formal Coatings. RabbitCore RCM4200...
  • Page 105: Jumper Configurations

    A.6 Jumper Configurations Figure A-6 shows the header locations used to configure the various RCM4200 options via jumpers. RCM4200 JP11 JP10 JP12 JP16 JP14 JP15 JP13 Figure A-6. Location of RCM4200 Configurable Positions Table A-9 lists the configuration options. Table A-9. RCM4200 Jumper Configurations Factory Header Description...
  • Page 106 Programmed I/O Access to Serial Flash 2–3 Programmed I/O to Serial Flash × 1–2 FDX/COL displayed by LED DS3 JP16 LED DS3 Display optional ACT displayed by LED 2–3 NOTE: The jumper connections are made using 0 Ω surface-mounted resistors. RabbitCore RCM4200...
  • Page 107: Appendix B. Prototyping Board

    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 RCM4200 and to build prototypes of your own circuits. The Prototyping Board has power-supply connections and also provides some basic I/O peripherals (RS-232, LEDs, and switches), as well as a prototyping area for more advanced hardware development.
  • Page 108: Introduction

    Area RX67 Mounting UX12 RX43 UX14 RX97 RX59 RX75 RX57 RX49 RX55 RX73 CX27 SMT Prototyping VREF AGND CX25 CX23 RX77 RX79 Area UX16 JP25 Analog User LEDs RCM4200 User Module Switches Extension Header Figure B-1. Prototyping Board RabbitCore RCM4200...
  • Page 109: Prototyping Board Features

    B.1.1 Prototyping Board Features —A a 3-pin header is provided for connection to the power supply. Power Connection • Note that the 3-pin header is symmetrical, with both outer pins connected to ground and the center pin connected to the raw V+ input. The cable of the AC adapter provided with the North American version of the Development Kit is terminated with a header plug that connects to the 3-pin header in either orientation.
  • Page 110 +3.3 V supply. Backup Battery —A 2032 lithium-ion battery rated at 3.0 V, 220 mA·h, provides • battery backup for the RCM4200 SRAM and real-time clock. RabbitCore RCM4200...
  • Page 111: Mechanical Dimensions And Layout

    B.2 Mechanical Dimensions and Layout Figure B-2 shows the mechanical dimensions and layout for the Prototyping Board. 2.735 (69.5) 1.935 (49.1) RESET UX49 UX47 +5 V /RST_OUT /IORD +3.3 V RX81 RCM1 /IOWR /RST_IN VBAT RX83 JP16 JP12 JP14 RX11 UX30 JP18 JP10...
  • Page 112: Power Supply

    The Prototyping Board itself is protected against reverse polarity by a Shottky diode at D2 as shown in Figure B-3. LINEAR POWER REGULATOR +3.3 V SWITCHING POWER REGULATOR +5 V LM1117 DCIN DL4003 47 µF 330 µF 10 µF 10 µF 330 µH LM2575 B140 Figure B-3. Prototyping Board Power Supply RabbitCore RCM4200...
  • Page 113: Using The Prototyping Board

    (S2 and S3) are connected to PB4 and PB5 to demonstrate the interface to the Rabbit 4000 microprocessor. Reset switch S1 is the hardware reset for the RCM4200. The Prototyping Board provides the user with RCM4200 connection points brought out con- veniently to labeled points at header J2 on the Prototyping Board.
  • Page 114 All signals from the RCM4200 module are available on header J2 of the Prototyping Board. The remaining ports on the Rabbit 4000 microprocessor are used for RS-232 serial communication. Table B-2 lists the signals on header J2 and explains how they are used on the Prototyping Board.
  • Page 115: Adding Other Components

    mount components may be installed. Small holes are provided around the surface-mounted components that may be installed around the prototyping area. B.4.1 Adding Other Components There are pads for 28-pin TSSOP devices, 16-pin SOIC devices, and 6-pin SOT devices that can be used for surface-mount prototyping with these devices. There are also pads that can be used for SMT resistors and capacitors in an 0805 SMT package.
  • Page 116: Analog Features (Rcm4200 Only)

    Table B-3. Positive A/D Converter Input Voltage Ranges Max. Voltage Min. Voltage Gain A/D Converter Resolution (with prescaler) Multiplier Actual Gain (mV) +22.528 ×1 +11.264 ×2 +5.632 ×4 2.75 +4.506 ×5 2.20 +2.816 ×8 1.375 +2.253 ×10 1.100 +1.408 ×16 14.4 0.688 +1.126 ×20 0.550 RabbitCore RCM4200...
  • Page 117 Adjacent input channels are paired; moving the jumper on JP 23 changes both of the paired channels (LN4_IN–LN5_IN), and moving the jumper on JP24 changes LN0_IN– LN1_IN and LN2_IN–LN3_IN. At the present time Rabbit Semiconductor does not offer the software drivers to work with single-ended negative voltages, but the differential mode described below may be used to measure negative voltages.
  • Page 118: Thermistor Input

    Sample programs are available to illustrate how to read and calibrate the various A/D inputs for the single-ended operating mode. Mode Read Calibrate Single-Ended, one channel — AD_CAL_CHAN.C Single-Ended, all channels AD_RDVOLT_ALL.C AD_CAL_ALL.C RabbitCore RCM4200...
  • Page 119: Serial Communication

    B.4.4 Serial Communication The Prototyping Board allows you to access the serial ports from the RCM4200 module. Table B-5 summarizes the configuration options. Note that Serial Ports E can be used only when the RCM4210 is installed on the Prototyping Board. Table B-5.
  • Page 120: B.4.4.1 Rs-232

    RS-232 serial communication protocol. Basically, the chip translates the Rabbit 4000’s signals to RS-232 signal levels. Note that the polarity is reversed in an RS-232 circuit so that a +3.3 V output becomes approxi- mately -10 V and 0 V is output as +10 V.
  • Page 121: Prototyping Board Jumper Configurations

    B.5 Prototyping Board Jumper Configurations Figure B-8 shows the header locations used to configure the various Prototyping Board options via jumpers. UX49 JP16 JP12 JP14 JP18 JP10 JP24 JP23 JP25 Figure B-8. Location of Configurable Jumpers on Prototyping Board Table B-6 lists the configuration options using either jumpers or 0 Ω surface-mount resistors. Table B-6.
  • Page 122 1–2 Connected: PB5 to Switch S3 JP18 PB5/Switch S3 n.c. PB5 available on header J2 JP19 LN4 buffer/filter to RCM4200 1–2 Connected JP20 LN5 buffer/filter to RCM4200 1–2 Connected JP21 LN6 buffer/filter to RCM4200 1–2 Connected JP22 LN7 buffer/filter to RCM4200 1–2 Connected RabbitCore RCM4200...
  • Page 123 Table B-6. RCM4200 Prototyping Board Jumper Configurations (continued) Factory Header Description Pins Connected Default × 1–2 Tied to analog ground JP23 LN4_IN–LN6_IN 2–3 Tied to VREF × 1–2 Tied to analog ground JP24 LN0_IN–LN3_IN 2–3 Tied to VREF JP25 Thermistor Location 1–2 n.c.
  • Page 124 RabbitCore RCM4200...
  • Page 125: Appendix C. Power Supply

    The RCM4200 does not have a battery, but there is provision for a customer-supplied bat- tery to back up the data SRAM and keep the internal Rabbit 4000 real-time clock running. Header J2, shown in Figure C-1, allows access to the external battery. This header makes it possible to connect an external 3 V power supply.
  • Page 126: Battery-Backup Circuit

    NOTE: Remember to cycle the main power off/on any time the RCM4200 is removed from the Prototyping Board or motherboard since that is where the backup battery would be located. Rabbit Semiconductor’s Technical Note TN235, External 32.768 kHz Oscillator Circuits, provides additional information about the current draw by the real-time clock oscillator circuit.
  • Page 127: Reset Generator

    C.1.3 Reset Generator The RCM4200 uses a reset generator to reset the Rabbit 4000 microprocessor when the volt- age drops below the voltage necessary for reliable operation. The reset occurs between 2.85 V and 3.00 V, typically 2.93 V. Since the RCM4200 will operate at voltages as low as 3.0 V, exercise care when operating close to the 3.0 V minimum voltage (for example, keep...
  • Page 128 RabbitCore RCM4200...
  • Page 129: Index

    NDEX A/D converter clock doubler ......44 Ethernet cables ...... 73 access via Prototyping Board cloning ........50 how to tell them apart ..73 ........110 conformal coating ....98 Ethernet connections ..73, 75 function calls 10/100Base-T ....75 anaIn ......
  • Page 130 SERDMA.C ....19 to serial flash) ...100 pinout .......107 SIMPLE3WIRE.C ..20 JP14 (clocked synchronous power supply ....106 SIMPLE5WIRE.C ..20 or programmed I/O access prototyping area ....108 SWITCHCHAR.C ..20 to serial flash) ...100 specifications ....106 use of Rabbit 4000 signals 108 RabbitCore RCM4200...
  • Page 131 ....89 SMTP.C ......84 header footprint ....93 USERBLOCK_CLEAR.C 49 Prototyping Board ... 106 USERBLOCK_INFO.C ..49 Rabbit 4000 DC characteris- serial communication .... 35 tics ......... 94 function calls ..... 49 Rabbit 4000 timing dia- Prototyping Board gram ......
  • Page 132 RabbitCore RCM4200...
  • Page 133: Schematics

    CHEMATICS 090-0241 RCM4200 Schematic www.rabbit.com/documentation/schemat/090-0241.pdf 090-0230 Prototyping Board Schematic www.rabbit.com/documentation/schemat/090-0230.pdf 090-0128 Programming Cable Schematic www.rabbit.com/documentation/schemat/090-0128.pdf 090-0252 USB Programming Cable Schematic www.rabbit.com/documentation/schemat/090-0252.pdf You may use the URL information provided above to access the latest schematics directly. User’s Manual...
  • Page 135 Mouser Electronics Authorized Distributor Click to View Pricing, Inventory, Delivery & Lifecycle Information: Rabbit Semiconductor 101-1155...

Table of Contents