20-101-1067 Rabbit Semiconductor, 20-101-1067 Datasheet

MODULE RABBITCORE RCM3305

20-101-1067

Manufacturer Part Number
20-101-1067
Description
MODULE RABBITCORE RCM3305
Manufacturer
Rabbit Semiconductor
Datasheet

Specifications of 20-101-1067

Module/board Type
MPU Core Module
Product
Microcontroller Modules
Flash
512 KBytes
Timers
10 bit
Operating Supply Voltage
3.15 to 3.45 V
Board Size
47 mm x 69 mm x 22 mm
For Use With/related Products
RCM3305
Lead Free Status / RoHS Status
Lead free / RoHS Compliant
Other names
316-1113

Available stocks

Company
Part Number
Manufacturer
Quantity
Price
Part Number:
20-101-1067
Manufacturer:
RABBIT
Quantity:
8
RabbitCore RCM3305/RCM3315
C-Programmable Core Module
with Serial Flash Mass Storage and Ethernet
User’s Manual
019–0151 • 080528–E

Related parts for 20-101-1067

20-101-1067 Summary of contents

Page 1

... RabbitCore RCM3305/RCM3315 C-Programmable Core Module with Serial Flash Mass Storage and Ethernet User’s Manual 019–0151 • 080528–E ...

Page 2

... RabbitCore RCM3305/RCM3315 User’s Manual Part Number 019-0151 • 080528–E • Printed in U.S.A. ©2005–2008 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. ...

Page 3

... Connectivity Interface Kits ...........................................................................................................7 1.4.4 Online Documentation ..................................................................................................................7 Chapter 2. Getting Started 2.1 Install Dynamic C .................................................................................................................................9 2.2 Hardware Connections........................................................................................................................10 2.2.1 Step 1 — Attach Module to Prototyping Board..........................................................................10 2.2.2 Step 2 — Connect Programming Cable ......................................................................................11 2.2.2.1 RCM3309 and RCM3319 .................................................................................................. 11 2.2.2.2 RCM3305 and RCM3315 .................................................................................................. 12 2.2.3 Step 3 — Connect Power ............................................................................................................13 2 ...

Page 4

Programming Cable............................................................................................................................ 33 4.3.1 Changing Between Program Mode and Run Mode.................................................................... 33 4.3.2 Standalone Operation of the RCM3305/RCM3315 ................................................................... 34 4.4 Other Hardware .................................................................................................................................. 35 4.4.1 Clock Doubler ............................................................................................................................ 35 4.4.2 Spectrum Spreader...................................................................................................................... 35 4.5 Memory .............................................................................................................................................. 36 4.5.1 ...

Page 5

... E.1 General RabbitNet Description ........................................................................................................139 E.1.1 RabbitNet Connections.............................................................................................................139 E.1.2 RabbitNet Peripheral Cards ......................................................................................................140 E.2 Physical Implementation ..................................................................................................................141 E.2.1 Control and Routing .................................................................................................................141 E.3 Function Calls...................................................................................................................................142 E.3.1 Status Byte................................................................................................................................148 Index Schematics User’s Manual 79 101 135 139 149 153 ...

Page 6

RabbitCore RCM3305/RCM3315 ...

Page 7

... Rabbit 3000’s internal real-time clock and the static RAM. Two 34-pin headers bring out the Rabbit 3000 I/O bus lines, parallel ports, and serial ports. The RCM3305’ ...

Page 8

... Small size: 1.85" x 2.73" x 0.86" ( mm) • Microprocessor: Rabbit 3000 running at 44.2 MHz • 49 parallel 5 V tolerant I/O lines: 43 configurable for I/O, 3 fixed inputs, 3 fixed outputs • Three additional digital inputs, two additional digital outputs • External reset • Alternate I/O bus can be configured for 8 data lines and 6 address lines (shared with parallel I/O lines), plus I/O read/write • ...

Page 9

... USB port with an RS-232/USB converter, or directly over an Ethernet link using the fea- tured remote application update or the Dynamic C download manager with or without a RabbitLink. Appendix A provides detailed specifications for the RCM3305 and the RCM3315. User’s Manual RCM3305 Rabbit 3000 running at 44.2 MHz 512K program (fast SRAM) + 512K data ...

Page 10

... Ethernet jack interface. Dynamic C — As long as no low-level FAT file system calls were used in your applica- • tion developed for the RCM3305/RCM3315, you may run that application on the RCM3309/RCM3319 after you recompile it using Dynamic C v ...

Page 11

... Program download utility (Rabbit Field Utility) 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. • Integrated Ethernet port for network connectivity, with royalty-free TCP/IP software. ...

Page 12

... Development Kit Contents The RCM3305 Series Development Kit contains the following items • RCM3309 module. • Prototyping Board. • Universal AC adapter DC (includes Canada/Japan/U.S., Australia/N.Z., U.K., and European style plugs). • USB programming cable with 10-pin header. ® • Dynamic C CD-ROM — ...

Page 13

... Software The RCM3305 and the RCM3315 are programmed using version 9.25 or later of Rabbit’s Dynamic C. A compatible version is included on the Development Kit CD-ROM. Dynamic C v. 9.60, which is required for the related RCM3309 and RCM3319 RabbitCore modules, includes the popular µC/OS-II real-time operating system, point-to-point proto- col (PPP), FAT file system, RabbitWeb, and other select libraries that were previously sold as indidual Dynamic C modules ...

Page 14

RabbitCore RCM3305/RCM3315 ...

Page 15

... The installation allows you to choose the COM port that will be used. The default selec- tion is COM1. You may select any available port for Dynamic C’s use. If you are not cer- tain which port is available, select COM1. This selection can be changed later within Dynamic C ...

Page 16

... Permanent electrical damage to the module may also result if a misaligned module is powered up. Press the module’s pins firmly into the Prototyping Board header sockets—press down in the area above the header pins using your thumbs or fingers over the connectors as shown in Figure 2 ...

Page 17

... Step 2 — Connect Programming Cable The programming cable connects the RCM3305 series module to the PC running Dynamic C to download programs and to monitor the module during debugging. 2.2.2.1 RCM3309 and RCM3319 Connect the 10-pin connector of the programming cable labeled the RCM3309/RCM3319 as shown in Figure 3(a). There is a small dot on the circuit board next to pin 1 of header J1 ...

Page 18

... Figure 3(b). Connect Programming Cable and Power Supply NOTE: Be sure to use the serial programming cable (part number 101-0542)—the pro- gramming cable has blue shrink wrap around the RS-232 converter section located in the middle of the cable. The USB programming cable and programming cables with clear or red shrink wrap from other Rabbit kits are not designed to work with RCM3305/ RCM3315 modules ...

Page 19

... All Development Kits sold up to May, 2008, included a header connector that may be used to connect your power supply to 3-pin header J2 on the Prototyping Board. The connector may be attached either way as long not offset to one side—the center pin always connected to the positive terminal, and either edge pin is negative. The power supply should deliver User’ ...

Page 20

... COM port used by the programming cable. • If you get an error message when you plugged the programming cable into a USB port, you will have to install USB drivers. Drivers for Windows XP are available in the ...

Page 21

... PC cannot handle the default debugging baud rate. Try lowering the debugging baud rate as follows. • Locate the Serial Options dialog in the Dynamic C Options > Project Options > Communications menu. Choose a lower debug baud rate. 2.5 Where From Here? If the sample program ran fine, you are now ready other sample programs and to develop your own applications ...

Page 22

RabbitCore RCM3305/RCM3315 ...

Page 23

... RCM3315 to your PC. 4. Power must be applied to the RCM3305/RCM3315 through the Prototyping Board. Refer to Chapter 2, “Getting Started,” if you need further information on these steps. To run a sample program, open it with the pile and run the program. The RCM3305/RCM3315 must be in Program Mode (see Figure 8) and must be connected using the programming cable. User’ ...

Page 24

... Dynamic C window. STDIO Press “2” or “3” or “4”or “5”on your keyboard to select LED DS3 or DS4 or DS5 or DS6 on the Prototyping Board. Then follow the prompt in the Dynamic C dow to turn the LED on or off. —Demonstrates assembly-language program by flashing the USR LED • ...

Page 25

... PARITY.C byte values 0–127 from Serial Port E to Serial Port F. The program will switch between generating parity or not on Serial Port E. Serial Port F will always be checking parity, so parity errors should occur during every other sequence. ...

Page 26

... Before running either of these sample programs on the RCM3305/RCM3315 assembly, make sure pins 1–2 and pins 5–6 are jumpered together on header JP5 to use the RS-485 bias and termination resistors. The sample programs use Serial Port C as the RS-485 serial port, and they use PD7 to enable/disable the RS-485 transmitter ...

Page 27

... The slave will send back converted upper case letters back to the master and display them in the program the slave. —This program demonstrates a simple RS-485 transmission of • SIMPLE485SLAVE.C lower case letters to a master. The slave will send back converted upper case letters back to the master and display them in the to program the master ...

Page 28

RabbitCore RCM3305/RCM3315 ...

Page 29

... Chapter 4 describes the hardware components and principal hardware subsystems of the RCM3305/RCM3315 modules. Appendix A, “RCM3305/RCM3315 Specifications,” provides complete physical and electrical specifications. Figure 4 shows the Rabbit-based subsystems designed into the RCM3305/RCM3315. Figure 4. RCM3305/RCM3315 Subsystems User’s Manual 4. H ARDWARE R EFERENCE 23 ...

Page 30

... Headers J3 and J4 are net port is also included with the RCM3305/RCM3315. Pins 29–32 on header J3 are configured using 0 Ω resistors at locations JP4, JP5, JP6, and JP7 to be PD2, PD3, PD6, and PD7 respectively. They may also be reconfigured to carry the Ethernet signals TPI+, TPI–, TPO+, and TPO–. ...

Page 31

... Figure 6 shows the use of the Rabbit 3000 microprocessor ports in the RCM3305/ RCM3315 modules. Figure 6. Use of Rabbit 3000 Ports The ports on the Rabbit 3000 microprocessor used in the RCM3305/RCM3315 are config- urable, and so the factory defaults can be reconfigured. Table 2 lists the Rabbit 3000 fac- tory defaults and the alternate configurations. User’s Manual 25 ...

Page 32

... PD6/TPI– Input/Output 32 PD7/TPI+ Input/Output 33 LINK Output 34 ACT Output Pins 29–32 are configured with 0 Ω surface-mount resistors at JP4, JP5, JP7, and JP8 Default Use Alternate Use Output External data bus (ID0–ID7) Slave port data bus (SD0–SD7) QD2A QD2B QD1A ...

Page 33

... Input/Output 13 PE7 Input/Output 14 PE6 Input/Output 15 PE5 Input/Output 16 PE4 Input/Output 17 PE3 Input/Output 18 PE1 Input/Output 19 PE0 Input/Output User’s Manual Default Use Alternate Use CLKB IA0 /SWR IA1 /SRD IA2 SA0 IA3 SA1 IA4 IA5 /SLAVEATTN AQD1B PWM0 AQD1A PWM1 AQD2B PWM2 AQD2A ...

Page 34

... GND Notes 1. When using pins 33–34 on header J3 to drive LEDs, these pins can handle a sinking current mA. 2. The VRAM voltage is temperature-dependent. If the VRAM voltage drops below about 1 1.5 V, the contents of the battery-backed SRAM may be lost. If VRAM drops below 1.0 V, the 32 kHz oscillator could stop running. Pay careful attention to this volt- age if you draw any current from this pin ...

Page 35

... Parallel Port A can also be used as an external I/O data bus to isolate external I/O from the main data bus. Parallel Port B pins PB2–PB5 and PB7 can also be used as an external address bus. When using the external I/O bus for a digital output or the LCD/keypad module on the Prototyping Board, or for any other reason, you must add the following line at the begin- ning of your program ...

Page 36

Serial Communication The RCM3305/RCM3315 does not have any serial transceivers directly on the board. However, a serial interface may be incorporated into the board the RCM3305/RCM3315 is mounted on. For example, the Prototyping Board has RS-232 and RS-485 transceiver ...

Page 37

... ACT LED at DS1 indicates network activity. The green SPEED DS2 indicates that the RCM3305/RCM3315 is connected to a working network. The green LED at DS4 indicate when the RCM3305/RCM3315 is connected SPEED to a 100Base-T Ethernet connection. User’s Manual ETHERNET ACT , LINK , and LINK LED at ...

Page 38

... All three clocked Serial Port A signals are available as • a synchronous serial port • an asynchronous serial port, with the clock line usable as a general CMOS I/O pin The programming port may also be used as a serial port once the application is running. The SMODE pins may then be used as inputs and the status pin may be used as an output. ...

Page 39

... Run Mode when no pro- gramming cable is attached. When the Rabbit 3000 is reset, the operating mode is deter- mined by the state of the SMODE pins. When the programming cable’s is attached, the SMODE pins are pulled high, placing the Rabbit 3000 in the Program Mode. When the programming cable’ ...

Page 40

... A program “runs” in either mode, but can only be downloaded and debugged when the RCM3305/RCM3315 is in the Program Mode. Refer to the Rabbit 3000 Microprocessor User’s Manual gramming port. 4.3.2 Standalone Operation of the RCM3305/RCM3315 The RCM3305/RCM3315 must be programmed via the Prototyping Board or via a similar arrangement on a customer-supplied board ...

Page 41

... The spectrum spreader will now be set to the state specified OK by the macro value whenever you are in the project file where you defined the macro. NOTE: Refer to the Rabbit 3000 Microprocessor User’s Manual for more information on the spectrum-spreading setting and the maximum clock speed. User’s Manual Options > ...

Page 42

... EPROM since it may be necessary to change the sector size in the future. Writing to arbitrary flash memory addresses at run time is also discouraged. Instead, use a portion of the “user block” area to store persistent data. The functions writeUser- Block() and readUserBlock() are provided for this. Refer to the Microprocessor Designer’s Handbook additional information ...

Page 43

... Dynamic C development environment. Debugging occurs while the application runs on the target. Alternatively, users can compile a program to an image file for later loading. Dynamic C runs on PCs under Windows 2000 and later—see Rabbit’s Technical Note TN257, Running Dynamic C User’ ...

Page 44

... C, SPI, GPS, file system. 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 “ ...

Page 45

... DLP_STATIC.C SAMPLES\RCM3300\RemoteApplicationUpdate the use of these programs is provided in the Remote Application Update instructions, which are available with the online documentation. Dynamic C provides sample programs to illustrate the use of a download manager. User’s Manual and , are available in the Dynamic C DLP_WEB.C folder. Complete information on ...

Page 46

... SRAM without affecting the performance of the application program. Data integrity is not assured when a reset or power failure occurs during the update process. Additional information on bbram User’s Manual required to enable external I/O bus folder provide further SAMPLES/RCM3300 keyword to identify variables that are to be ...

Page 47

... Dynamic C Function Reference Manual and Technical Note TN213, Rabbit Serial Port Software. 5.2.4 TCP/IP Drivers The TCP/IP drivers are located in the libraries and the TCP/IP functions is provided in the Dynamic C TCP/IP User’s Manual. 5.2.5 Serial Flash Drivers The Dynamic C SerialFlash\SFLASH.LIB memory devices on an SPI bus such as the serial flash on board the RCM3305 and the RCM3315, which use Serial Port SPI port ...

Page 48

... RS-485 is not enabled. 6. RS-232 is not enabled. 7. LEDs are off. 8. Ethernet select is disabled. 9. Mass-storage flash select is disabled. 10. Motor control is disabled. 11. The RabbitNet SPI interface is disabled. 12. The relay is set to normally closed positions. RETURN VALUE None. 42 SAMPLES\RCM3300\RCM33xx.LIB RN_CFG_RCM33.LIB RabbitCore RCM3305/RCM3315 library if you —library, which is ...

Page 49

... Writes a value to an output channel on Prototyping Board header J10. Do not use this function if you have installed the stepper motor chips at U2 and U3. PARAMETERS channel is output channel 0–7 (OUT00–OUT07). value is the value ( output. RETURN VALUE None. ...

Page 50

... Switches, LEDs, and Relay int switchIn(int swin); Reads the state of a switch input. PARAMETERS swin is the switch input to read: 2—S2 3—S3 RETURN VALUE State of the switch input open 0 = closed SEE ALSO brdInit void ledOut(int led, int value); Controls LEDs on the Prototyping Board and on the RCM3305/RCM3315. ...

Page 51

... Byte mode—disable the transmitter after the same byte that is transmitted is detected in the receive data buffer. Block data mode—disable the transmitter after the same number of bytes transmitted are detected in the receive data buffer ...

Page 52

... The function calls described in this section are used to configure the RabbitNet port on the Prototyping Board for use with RabbitNet peripheral cards. The user’s manual for the spe- cific peripheral card you are using contains additional function calls related to the Rabbit- Net protocol and the individual peripheral card ...

Page 53

... This is a macro that enables or asserts the RCM3305/RCM3315 RabbitNet port chip select prior to data transfer. PARAMETERS portnum = 0 RETURN VALUE None void rn_sp_disable(int portnum); This is a macro that disables or deasserts the RCM3305/RCM3315 RabbitNet port chip select to invali- date data transfer. PARAMETERS portnum = 0 RETURN VALUE None. User’s Manual 47 ...

Page 54

Upgrading Dynamic C Dynamic C patches that focus on bug fixes are available from time to time. Check the Web site www.rabbit.com/support/ 5.3.1 Extras Dynamic C installations are designed for use with the board they are included with, and ...

Page 55

... RCM3305/RCM3315 module’s Ethernet port at this time. Before proceeding you will need to have the following items. • If you don’t have Ethernet access, you will need at least a 10Base-T Ethernet card (available from your favorite computer supplier) installed in a PC. ...

Page 56

... Now you should be able to make your connections. 1. Connect the AC adapter and the programming cable as shown in Chapter 2, “Getting Started.” 2. Ethernet Connections There are four options for connecting the RCM3305/RCM3315 module to a network for development and runtime purposes. The first two options permit total freedom of action in selecting network addresses and use of the “ ...

Page 57

... Internet to directly con- tact the controller, but it would probably be easier to place the controller directly on the external network outside of the firewall. This avoids some of the configuration complica- tions by sacrificing some security. User’s Manual 51 ...

Page 58

T1 in Adapter Ethernet Typical Corporate Network If your system administrator can give you an Ethernet cable along with its IP address, the netmask and the gateway address, then you may be able to run the sample programs with- out ...

Page 59

... The highest address (216.102.126.255) is used as a broadcast address. Usually one other address is used for the address of the gateway out of the network. This leaves 256 - 3 = 253 available IP addresses for the example given. User’s Manual N IP addresses in a local network. The netmask (also 8 ...

Page 60

How IP Addresses are Used The actual hardware connection via an Ethernet uses Ethernet adapter addresses (also called MAC addresses). These are 48-bit addresses and are unique for every Ethernet adapter manufactured. In order to send a packet to ...

Page 61

... The DHCP server may try to give you the same address each time, but a fixed IP address is usually not guaranteed. If you are not concerned about accessing the RCM3305/RCM3315 from the Internet, you can place the RCM3305/RCM3315 on the internal network using an IP address assigned either statically or through DHCP. User’s Manual program while you are connected winipcfg 55 ...

Page 62

Placing Your Device on the Network In many corporate settings, users are isolated from the Internet by a firewall and/or a proxy server. These devices attempt to secure the company from unauthorized network traffic, and usually work by disallowing ...

Page 63

... RCM3305/RCM3315 board together on the same network. This network can be a local pri- vate network (preferred for initial experimentation and debugging connection via the Internet. RCM3305/RCM3315 System User’s PC Ethernet crossover cable Direct Connection (network of 2 computers) User’s Manual RCM3305/RCM3315 System Ethernet cables Hub Direct Connection Using a Hub To additional network elements 57 ...

Page 64

... If you would like to change the default values, for example, to use an IP 10.10.6.1 address of for the RCM3305/RCM3315 board, and 10.1.1.2 you can edit the values in the section that directly follows the “General Configuration” comment in the TCP_CONFIG.LIB directory. 3. You can create a CUSTOM_CONFIG ...

Page 65

... TCP/IP Xircom Credit Card Network Adapter Depending on which version of Windows your PC is running, you may have to select the “Local Area Connection” first, and then click on the “Properties” button to bring up the Ethernet interface dialog. Then “Configure” your interface card for a “10Base-T Half-Duplex” ...

Page 66

... BROWSELED.C Two “device LEDs” are created along with two buttons to toggle them. Users can use their Web browser to change the status of the lights. The DS3 and DS4 LEDs on the Prototyping Board will match those on the Web page. As long as you have not modified ...

Page 67

... SMTP library to send an e-mail when • SMTP.C the S2 and S3 switches on the Prototyping Board are pressed. LEDs DS3 and DS4 on the Prototyping Board will light up when e-mail is being sent. 6.6.1 RabbitWeb Sample Programs You will need to have the Dynamic C RabbitWeb module installed before you run the sample programs described in this section ...

Page 68

First, you need to format and partition the serial flash. Find the program in the Dynamic C SAMPLES\FileSystem with the File > Open menu, then compile and run it by pressing formats the mass storage device for use with the ...

Page 69

... If the sample programs ran fine, you are now ready to go on. Additional sample programs are described in the Dynamic C TCP/IP User’s Manual. Please refer to the Dynamic C TCP/IP User’s Manual to develop your own applications. An Introduction to TCP/IP provides background information on TCP/IP, and is available ...

Page 70

RabbitCore RCM3305/RCM3315 ...

Page 71

... A PPENDIX Appendix A provides the specifications for the RCM3305/ RCM3315, and describes the conformal coating. User’s Manual A. RCM3305/RCM3315 S PECIFICATIONS 65 ...

Page 72

A.1 Electrical and Mechanical Characteristics Figure A-1 shows the mechanical dimensions for the RCM3305/RCM3315. Figure A-1. RCM3305/RCM3315 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). ...

Page 73

... It is recommended that you allow for an “exclusion zone” of 0.04" (1 mm) around the RCM3305/RCM3315 in all directions when the RCM3305/RCM3315 is incorporated into an assembly that includes other printed circuit boards. An “exclusion zone” of 0.08" (2 mm) is recommended below the RCM3305/RCM3315 when the RCM3305/RCM3315 is plugged into another assembly. Figure A-2 shows this “exclusion zone.” ...

Page 74

... USR (user-programmable) Connection for user-supplied backup battery (to support RTC and data SRAM) 49 parallel digital I/0 lines: • 43 configurable I/O • 3 fixed inputs • 3 fixed outputs Startup mode (2), reset in Status, reset out Can be configured for 8 data lines and Maximum asynchronous baud rate = CLK/8 ...

Page 75

... PWM registers with 10-bit free-running counter and priority interrupts 3.15–3. 250 mA @ 44.2 MHz, 3.3 V -40°C to +70°C (boards manufactured up to May, 2008) 0°C to +70°C (boards manufactured after May, 2008 95%, noncondensing Two 2 × 17 pitch one 2 × 5 for programming with 1.27 mm pitch 1.850" ...

Page 76

A.1.1 Headers The RCM3305/RCM3315 uses headers at J3 and J4 for physical connection to other boards. J3 and J4 are 2 × 17 SMT headers with pin spacing. J1, the programming port × 5 ...

Page 77

... Be sure to add the loads for the devices you are using in your custom system and verify that they do not exceed the values in Table A-3. Table A-3. External Capacitive Bus Loading -40°C to +85°C Output Port All I/O lines with clock doubler enabled User’s Manual Input Output Capacitance Capacitance (pF) ...

Page 78

... Figure A-4 shows a typical timing diagram for the Rabbit 3000 microprocessor external I/O read and write cycles. Figure A-4. I/O Read and Write Cycles—No Extra Wait States NOTE: /IOCSx can be programmed to be active low (default) or active high. 72 RabbitCore RCM3305/RCM3315 ...

Page 79

... V 6 The measurements are taken at the 50% points under the following conditions. • -40°C to 85° • Internal clock to nonloaded CLK pin delay ≤ 85°C/3.0 V The clock to address output delays are similar, and apply to the following delays. • the clock to address delay adr • ...

Page 80

... Low-Level Input Current I IL (absolute worst case, all buffers) High-Impedance State I Output Current OZ (absolute worst case, all buffers) 74 Parameter Maximum Rating -55° to +85°C -65° to +150° 0 5 –55°C to +85° Test Conditions I = 6.8 mA (min 6.8 mA (min ...

Page 81

... All data, address, and I/O lines with clock doubler enabled Under certain conditions, you can exceed the limits outlined in Table A-7. See the Rabbit 3000 Microprocessor User’s Manual for additional information. User’s Manual Output Drive (Full AC Switching) Sourcing/Sinking Limits ...

Page 82

A.5 Jumper Configurations Figure A-5 shows the jumper locations used to configure the various RCM3305/ RCM3315 options. The black square indicates pin 1. Figure A-5. Location of RCM3305/RCM3315 Configurable Positions 76 RabbitCore RCM3305/RCM3315 ...

Page 83

... JP8 on Header J3 NOTE: The jumper connections are made using 0 Ω surface-mounted resistors. User’s Manual Pins Connected 1–2 128K/256K 2–3 512K 1–2 Reserved for future use 2–3 Normal Mode 1–2 128K/256K 2–3 512K 1–2 TPO+ 2–3 PD3 1–2 TPO– 2–3 PD2 1– ...

Page 84

... A.6 Conformal Coating The areas around the 32 kHz real-time clock crystal oscillator have 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. ...

Page 85

... A PPENDIX Appendix B describes the features and accessories of the Proto- typing Board. User’s Manual B. P ROTOTYPING B OARD 79 ...

Page 86

B.1 Introduction The Prototyping Board included in the Development Kit makes it easy to connect an RCM3305/RCM3315 module to a power supply and a PC workstation for development. It also provides some basic I/O peripherals (RS-232, RS-485, a relay, LEDs, ...

Page 87

... J2 is always connected to the positive terminal, and either edge pin is negative. Users providing their own power supply should ensure that it delivers 8– Regulated Power Supply • ...

Page 88

... RabbitNet peripheral cards to be used with the Prototyping Board. Serial Flash Interface —One serial flash interface (shared with the RabbitNet port) is • available to allow Rabbit’s SF1000 series serial flash to be used on the Prototyping Board. 82 —The complete pin set of the RCM3305/RCM3315 ...

Page 89

... B.2 Mechanical Dimensions and Layout Figure B-2 shows the mechanical dimensions and layout for the Prototyping Board. Figure B-2. Prototyping Board Dimensions NOTE: All measurements are in inches followed by millimeters enclosed in parentheses. User’s Manual 83 ...

Page 90

... 800 mA max. for +3.3 V supply total +3.3 V and +5 V combined CR2032 lithium coin-type 4 inputs pulled up, ± DC, switching threshold 0.9–2.3 V typical 4 sinking outputs,+30 V DC, 500 mA maximum per channel 8 CMOS-level outputs if stepper motor not installed SPDT relay, 500 • ...

Page 91

... The Prototyping Board has an onboard +5 V switching power regulator from which a +3.3 V linear regulator draws its supply. Thus both +5 V and +3.3 V are available on the Prototyping Board. The Prototyping Board itself is protected against reverse polarity by a diode shown in Figure B-3. Figure B-3. Prototyping Board Power Supply User’s Manual 85 ...

Page 92

B.4 Using the Prototyping Board The Prototyping Board is actually both a demonstration board and a prototyping board demonstration board, it can be used with the sample programs to demonstrate the func- tionality of the RCM3305/RCM3315 right out ...

Page 93

... If you don’t plan to use the LCD/keypad module, additional signals may be brought out on 1 × 5 and 1 × 8 headers from the bag of parts that you install at J15 and J16. If you don’t plan to use the stepper-motor control option, additional CMOS outputs are available via a 1 × 8 header that you install at J10 ...

Page 94

... B.4.2.1 Digital Inputs The Prototyping Board has four digital inputs, IN0–IN3, each of which is protected over a range of – +36 V. The inputs are pulled shown in Figure B-5. Figure B-5. Prototyping Board Digital Inputs The four quadrature decoder inputs on screw-terminal header J5 may be used as inputs IN4– ...

Page 95

... If the stepper-motor option is not used, eight CMOS-level digital outputs are available at J10, and can each handle mA. B.4.4 Sinking Digital Outputs Four sinking digital outputs shared with LEDs DS3–DS6 are available at J12, and can each handle up to 500 mA. Figure B-6 shows a wiring diagram for a typical sinking output Figure B-6 ...

Page 96

... Serial Port D is configured in software either to allow used as a RabbitNet port or to allow J11 to be used as a serial interface for the SF1000 series serial flash. 90 Configured via Default Use * RS-485 JP5 RabbitNet (PD2 = 1) JP3 SF1000 (PD2 = 0) — RS-232 — RS-232 RabbitCore RCM3305/RCM3315 Alternate Use — Rabbit 3000 quadrature decoder — — ...

Page 97

... U9. This transceiver 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 3000’s signals to RS-232 signal levels. Note that the polarity is reversed in an RS-232 circuit so that output becomes approximately -10 V and output as +10 V ...

Page 98

... The Prototyping Boards with RCM3305/RCM3315 modules installed can be used in an RS-485 multidrop network spanning up to 1200 m (4000 ft), and there can be as many as 32 attached devices. Connect the 485+ to 485+ and 485– to 485– using single twisted-pair wires as shown in Figure B-8 ...

Page 99

... The Prototyping Board comes with a 220 Ω termination resistor and two 681 Ω bias resis- tors installed and enabled with jumpers across pins 1–2 and 5–6 on header JP5, as shown in Figure B-9. Figure B-9. RS-485 Termination and Bias Resistors For best performance, the termination resistors in a multidrop network should be enabled only on the end nodes of the network, but not on the intervening nodes. Jumpers on boards whose termination resistors are not enabled may be stored across pins 1– ...

Page 100

... Rabbit’s SF1000 series serial flash may be installed in the socket labeled J11. The J11 interface is enabled in software by setting PD2 = 0. Header JP3 must have pins 2–3 jum- pered when using the J11 interface. Note that the RabbitNet port and the J11 interface cannot be used simultaneously ...

Page 101

... Table B-3. Stepper Motor Power-Supply Options Header 1–2 9–10 JP1 3–4 7–8 1–2 9–10 JP2 3–4 7–8 User’s Manual Pins Connected Onboard power supply to U2 External power supply to U2 Onboard power supply to U3 External power supply to U3 Factory Default × × 95 ...

Page 102

B.5 Prototyping Board Jumper Configurations Figure B-12 shows the header locations used to configure the various Prototyping Board options via jumpers. Figure B-12. Location of Prototyping Board Configurable Positions 96 RabbitCore RCM3305/RCM3315 ...

Page 103

... Onboard power supply 9–10 3–4 External power supply 7–8 1–2 Onboard power supply 9–10 3–4 External power supply 7–8 1–2 Quadrature decoder inputs enabled RabbitNet/Serial Flash interface 2–3 enabled RCM3305/RCM3315 powered via 2–3 Prototyping Board 1–2 Bias and termination resistors 5–6 connected Bias and termination resistors not 1– ...

Page 104

... RCM3305 onboard serial flash select SPI, serial flash, J7 SPI, serial flash, J7 Serial flash, J7 RS-485 Tx enable IN0–IN1, J6 Ethernet AEN Motor driver A clock pulse IN2–IN3, J6 LCD/keypad module Motor driver B clock pulse Initial State Active high Active high Active high High High ...

Page 105

... PG7 Input * Serial Port B is not available on the Prototyping Board when the RCM3305/RCM3315 is plugged in. † PD0, PD1, and PE2 are not normally available on the Prototyping Board because they are not brought out on RCM3305 headers J3 and J4. User’s Manual Use SPI, serial flash, quadrature decoder, J7 Quadrature decoder, J7 Motor 1– ...

Page 106

RabbitCore RCM3305/RCM3315 ...

Page 107

... LCD/keypad. C.1 Specifications Two optional LCD/keypad modules—with or without a panel-mounted NEMA 4 water- resistant bezel—are available for use with the Prototyping Board. They are shown in Figure C-1. Figure C-1. LCD/Keypad Module Versions Only the version without the bezel can mount directly on the Prototyping Board; if you have the version with a bezel, you will have to remove the bezel to be able to mount the LCD/keypad module on the Prototyping Board ...

Page 108

... Specification 2.60" x 3.00" x 0.75" ( mm) 4.50" × 3.60" × 0.30" (114 mm × × 7.6 mm) Operating Range: 0°C to +50°C Storage Range: –40°C to +85° 95%, noncondensing * 1.5 W maximum Connects to high-rise header sockets on the Prototyping Board 122 × 32 graphic display 7-key keypad Seven user-programmable LEDs Figure C-2 ...

Page 109

... You can set the contrast on the LCD display of pre-2005 LCD/keypad modules by adjust- ing the potentiometer setting the voltage for 3 connecting the jumper across pins 3–4 on header J5 as shown in Figure C-3. Only one of these two options is available on these LCD/keypad modules. NOTE: Older LCD/keypad modules that do not have a header contrast adjust- ment potentiometer at R2 are limited to operate only and will not work with the Prototyping Board for the RCM3305/RCM3315 ...

Page 110

C.3 Keypad Labeling The keypad may be labeled according to your needs. A template is provided in Figure C-4 to allow you to design your own keypad label insert. To replace the keypad legend, remove the old legend and insert ...

Page 111

... The LCD and keypad on the LCD/keypad module are addressed by the /CS strobe as explained in Table C-2. Table C-2. LCD/Keypad Module Address Assignment Address 0xE000 0xExx0–0xExx7 0xExx8 0xExx9 0xExxA 0xExxB (bits 0–6) 0xExxB (bit 7) 0xExxC–ExxF User’s Manual Function Device select base address (/CS) LCD control LED enable Not used ...

Page 112

C.5 Mounting LCD/Keypad Module on the Prototyping Board Install the LCD/keypad module on header sockets LCD1JA, LCD1JB, and LCD1JC of the Prototyping Board as shown in Figure C-7. Be careful to align the pins over the headers, and do not ...

Page 113

... Cut mounting holes in the mounting panel in accordance with the recommended dimen- sions in Figure C-8, then use the bezel faceplate to mount the LCD/keypad module onto the panel. Figure C-8. Recommended Cutout Dimensions 2. Carefully “drop in” the LCD/keypad module with the bezel and gasket attached. User’s Manual 107 ...

Page 114

Fasten the unit with the four 4-40 screws and washers included with the LCD/keypad module. If your panel is thick, use a 4-40 screw that is approximately 3/16" (5 mm) longer than the thickness of the panel. Figure C-9. ...

Page 115

... Figure C-10. Connecting LCD/Keypad Module to Prototyping Board Note the locations and connections relative to pin 1 on both the Prototyping Board and the LCD/keypad module. Rabbit offers 2 ft. (60 cm) extension cables. Contact your authorized distributor or a Rab- bitsales representative for more information. User’s Manual 109 ...

Page 116

... The RCM3305/RCM3315 must be connected using the programming F9 cable as described in Chapter 2, “Getting Started.” Complete information on Dynamic C is provided in the Dynamic C User’s Manual. —This program demonstrates the use of the external I/O bus. The • KEYPADTOLED.C program will light up an LED on the LCD/keypad module and will display a message on the LCD when a key press is detected ...

Page 117

... PARAMETERS led is the LED to control LED DS1 1 = LED DS2 2 = LED DS3 3 = LED DS4 4 = LED DS5 5 = LED DS6 6 = LED DS7 value is the value used to control whether the LED off ( off RETURN VALUE None. User’s Manual library. function executes. LIB\ 111 ...

Page 118

... Sets the LCD screen on or off. Data will not be cleared from the screen. PARAMETER onOff turns the LCD screen on or off 1—turn the LCD screen on 0—turn the LCD screen off RETURN VALUE None. SEE ALSO glInit, glSetContrast, glBackLight 112 GRAPHIC ...

Page 119

... RETURN VALUE None. SEE ALSO glFillScreen, glBlankScreen, glBlock, glBlankRegion User’s Manual 113 ...

Page 120

Fills a rectangular block in the LCD buffer with the pattern specified. The block left and width parame- ters must be byte-aligned. Any portion of the block that is ...

Page 121

... LCD display area will be clipped. If fewer than 3 vertices are specified, the function will return without doing anything. PARAMETERS n is the number of vertices. pFirstCoord is a pointer to array of vertex coordinates: x1,y1, x2,y2, x3,y3, ... RETURN VALUE None. SEE ALSO glPlotPolygon, glFillPolygon, glFillVPolygon User’s Manual 115 ...

Page 122

Plots the outline of a polygon in the LCD page buffer and on the LCD if the buffer is unlocked. Any portion of the polygon that is outside ...

Page 123

... LCD display area will be clipped. PARAMETERS xc is the x coordinate of the center of the circle the y coordinate of the center of the circle. rad is the radius of the center of the circle (in pixels). RETURN VALUE None. SEE ALSO glPlotCircle, glPlotPolygon, glFillPolygon User’s Manual 117 ...

Page 124

Initializes the font descriptor structure, where the font is stored in xmem. Each font character's bitmap is column major and byte-aligned. PARAMETERS pInfo is a pointer ...

Page 125

... The actual step increments depends on the height and width of the font being displayed, which are multiplied by the step values. RETURN VALUE The x step is returned in the MSB, and the y step is returned in the LSB of the integer result. SEE ALSO Use glGetPfStep() to control the x and y printing step direction. User’s Manual 119 ...

Page 126

... EXAMPLE glprintf(0,0, &fi12x16, "Test %d\n", count); RETURN VALUE None. SEE ALSO glXFontInit 120 STDIO string-handling functions and the graphic library. The STDIO string functions. STDIO string functions. RabbitCore RCM3305/RCM3315 ...

Page 127

... PIXWHITE draws white pixels (turns pixel off). PIXXOR draws old pixel XOR'ed with the new pixel. RETURN VALUE None. SEE ALSO glGetBrushType User’s Manual and can be nested level of 255, but be glBuffUnlock() bracketing a set of related graphic calls speeds glBuffUnlock() (located in the library specifically for the LCD ...

Page 128

Gets the current method (or color) of pixels drawn by subsequent graphic calls. RETURN VALUE The current brush type. SEE ALSO glSetBrushType void glXGetBitmap(int x, int y, int bmWidth, int bmHeight, unsigned long xBm); Gets a bitmap from ...

Page 129

... RETURN VALUE None. SEE ALSO glHScroll, glRight1 User’s Manual 123 ...

Page 130

Scrolls byte-aligned window right one pixel, left column is filled by current pixel type (color). PARAMETERS left is the top left corner of bitmap, must be evenly divisible by 8, otherwise ...

Page 131

... RETURN VALUE None. SEE ALSO glVScroll User’s Manual 125 ...

Page 132

Scrolls up or down, within the defined window by x number of pixels. The opposite edge of the scrolled window will be filled in with white pixels. The window ...

Page 133

... RETURN VALUE 0—window frame was successfully created. -1—x coordinate + width has exceeded the display boundary. -2—y coordinate + height has exceeded the display boundary. -3—Invalid winHeight and/or winWidth parameter value. User’s Manual function before other Text ...

Page 134

... SINGLE_LINE —The function will draw a single-line border around the text window. DOUBLE_LINE —The function will draw a double-line border around the text window. title is a pointer to the title information NULL string is detected, then no title is written to the text menu. ...

Page 135

... RETURN VALUE Lower word = Cursor Row location Upper word = Cursor Column location SEE ALSO TextGotoXY, TextPrintf, TextWindowFrame, TextCursorLocation User’s Manual function before using this function. function before using this function. 129 ...

Page 136

TextPutChar(struct windowFrame *window, char ch); Displays a character on the display where the cursor is currently pointing. Once a character is displayed, the cursor will be incremented to the next character position. If any portion of a bitmap character ...

Page 137

... This functions clears the entire area within the specified text window. NOTE: Execute the TextWindowFrame PARAMETERS wPtr is a pointer to the window frame descriptor. RETURN VALUE None. SEE ALSO TextGotoXY, TextPrintf, TextWindowFrame, TextCursorLocation User’s Manual function before using this function. function before using this function. 131 ...

Page 138

C.8.4 Keypad The functions used to control the keypad are contained in the Dynamic C library. KEYPAD7.LIB void keyInit(void); Initializes keypad process RETURN VALUE None. SEE ALSO brdInit void keyConfig(char cRaw, char cPress, char cRelease, char cCntHold, char cSpdLo, char ...

Page 139

... Get next keypress. RETURN VALUE The next keypress none SEE ALSO keyConfig, keyProcess, keypadDef int keyUnget(char cKey); Pushes the value of cKey to the top of the input queue, which is 16 bytes deep. PARAMETER cKey RETURN VALUE None. SEE ALSO keyGet User’s Manual 133 ...

Page 140

... Left Scroll 'U' represents Up Scroll 'D' represents Down Scroll 'R' represents Right Scroll '–' represents Page Down '+' represents Page Up 'E' represents the ENTER key Example: Do the following for the above physical vs. ASCII return key codes. keyConfig ( 3,'R', keyConfig ( 6,'E', keyConfig ( 2,'D', ...

Page 141

... Header J4, shown in Figure D-1, allows access to the external battery. This header makes it possible to connect an external 3 V power supply. This allows the SRAM and the inter- nal Rabbit 3000 real-time clock to retain data with the RCM3305/RCM3315 powered down. Figure D-1. External Battery Connections User’s Manual D. P PPENDIX at Header J4 S ...

Page 142

... It reduces the battery voltage to the SRAM and to the real-time clock, thereby limiting the current consumed by the real-time clock and lengthening the battery life. • It ensures that current can flow only out of the battery to prevent charging the battery. • A voltage, VOSC, is supplied to U1, which keeps the 32.768 kHz oscillator working when the voltage begins to drop ...

Page 143

... Rabbit 3000 and peripheral circuits. The /RESET output from the reset generator is available on pin 1 of header J4 on the RCM3305/RCM3315, and can be used to reset user-defined cir- cuits on the motherboard on which the RCM3305/RCM3315 module is mounted. User’s Manual 137 ...

Page 144

RabbitCore RCM3305/RCM3315 ...

Page 145

... All RabbitNet connections are made point to point. A RabbitNet master port can only be connected directly to a peripheral card, and the number of peripheral cards is limited by the number of available RabbitNet ports on the master. Figure E-1. Connecting Peripheral Cards to a Master User’s Manual PPENDIX ...

Page 146

... Signal = 0.1" headers or sockets Power = 0.156" friction-lock connectors RabbitNet = RJ-45 connector • Relay card 6 relays rated at 250 V AC, 1200 V·A or 100 240 W. The following connectors are : used Relay contacts = screw-terminal connectors Power = 0.156" friction-lock connectors RabbitNet = RJ-45 connector ...

Page 147

... E.2 Physical Implementation There are four signaling functions associated with a RabbitNet connection. From the mas- ter’s point of view, the transmit function carries information and commands to the periph- eral card. The receive function is used to read back information sent to the master by the peripheral card ...

Page 148

... PARAMETER pna is the physical node address, indicated as a byte. 7,6—2-bit binary representation of the port number on the master 5,4,3—Level 1 router downstream port 2,1,0—Level 2 router downstream port RETURN VALUE Pointer to device information ...

Page 149

... RETURN VALUE The status byte from the previous command. -1 means that device information indicates the peripheral card is not connected to the master. User’s Manual // status flags see MATCH macros below // port bitmask // product id ...

Page 150

... NOTE: A data length of 0 will transmit the one-byte command register number. RETURN VALUE The status byte from the previous command. -1 means that device information indicates the peripheral card is not connected to the master, and -2 means that the data length was greater than 15 ...

Page 151

... Use rn_device() or rn_find() to establish the handle. resettype describes the type of reset hard reset—equivalent to power-up. All logic is reset soft reset—only the microprocessor logic is reset. RETURN VALUE The status byte from the previous command. -1 means that device information indicates the peripheral card is not connected to the master. int rn_sw_wdt(int handle, float timeout) ...

Page 152

Enables the hardware and/or software watchdog timers on a peripheral card. The software on the periph- eral card will keep the hardware watchdog timer updated, but will hard reset if the time expires. The hardware ...

Page 153

... A set bit indicates which error occurred. This register is cleared when read. 7—Data available and waiting to be processed MOSI (master out, slave in) 6—Write collision MISO (master in, slave out) 5—Overrun MOSI (master out, slave in) 4— ...

Page 154

... Unless otherwise specified, functions returning a status byte will have the following format for each designated bit × × × × * Use the function rn_comm_status() to determine which error occurred. † Use the function rn_rst_status() to determine which timer expired. 148 Reserved 01 = Ready 10 = Busy 11 = Device not connected 0 = Device ...

Page 155

... I/O .............................. 24 function calls digIn .............................. 43 digOut ........................... 43 I/O buffer sourcing and sink- ing limits ....................... 75 memory interface .............. 29 SMODE0 .......................... 32 SMODE1 .......................... 32 User’s Manual digital inputs switching threshold ........... 88 dimensions LCD/keypad module ....... 101 LCD/keypad template ..... 104 Prototyping Board ............. 83 RCM3305/RCM3315 ........ 66 Dynamic C .............. 7, 9, 14, 37 add-on modules ............. 9, 48 installation ...

Page 156

... Prototyping Board (cont’d) JP4 (RCM3305/RCM3315 power supply) .............97 JP5 (RS-485 bias and termi- nation resistors) ..........97 stepper motor power supply .....................................95 RCM3305/RCM3315 ..76, 77 JP1 (flash memory size) 77 JP2 (flash memory bank select) ..........................77 JP3 (data SRAM size) ...77 JP4 (Ethernet or I/O output on header J3) ...............77 JP5 (Ethernet or I/O output on header J3) ...

Page 157

... PONG.C ............................ 14 RabbitNet .......................... 21 real-time clock RTC_TEST.C ................ 21 SETRTCKB.C .............. 21 Remote Application Update DLP_STATIC.C ..... 39, 61 DLP_WEB.C .......... 39, 61 serial communication FLOWCONTROL.C ..... 19 PARITY.C .................... 19 SIMPLE3WIRE.C ........ 20 SIMPLE485MASTER.C 21 SIMPLE485SLAVE SIMPLE5WIRE.C ........ 20 SWITCHCHAR.C ........ 20 SF1000 serial flash card SERFLASHTEST.C ..... 19 TCP/IP BROWSELED.C .......... 60 DISPLAY_MAC.C ....... 54 MBOXDEMO.C ........... 60 PINGLED.C .................. 60 PINGME.C .................... 60 RabbitWeb BLINKLEDS.C ......... 61 DOORMONITOR SPRINKLER.C ......... 61 SMTP.C ........................ 61 user-programmable LED FLASHLED.C .............. 29 serial communication ...

Page 158

I/O buffer sourcing and sinking limits .................75 dimensions .........................66 electrical, mechanical, and environmental ...............68 exclusion zone ...................67 header footprint .................70 headers ...............................70 LCD/keypad module dimensions ...................101 electrical ......................102 header footprint ...........102 mechanical ...................102 relative ...

Page 159

... RCM3305/RCM3315 Schematic www.rabbit.com/documentation/schemat/090-0221.pdf 090-0188 Prototyping Board Schematic www.rabbit.com/documentation/schemat/090-0188.pdf 090-0156 LCD/Keypad Module Schematic www.rabbit.com/documentation/schemat/090-0156.pdf 090-0128 Programming Cable Schematic www.rabbit.com/documentation/schemat/090-0128.pdf You may use the URL information provided above to access the latest schematics directly. User’s Manual S CHEMATICS 153 ...

Page 160

...

Related keywords