101-0523 Rabbit Semiconductor, 101-0523 Datasheet

KIT DEV RABBIT3000/RCM3000

101-0523

Manufacturer Part Number
101-0523
Description
KIT DEV RABBIT3000/RCM3000
Manufacturer
Rabbit Semiconductor
Series
RabbitCore 3000r
Type
MPU Moduler
Datasheet

Specifications of 101-0523

Rohs Status
RoHS non-compliant
Contents
RabbitCore Module, Dev. Board, AC Adapter, Cable and Dynamic C® CD-Rom
Processor To Be Evaluated
RCM3000
Interface Type
RS-232, Ethernet
Maximum Operating Temperature
+ 70 C
Minimum Operating Temperature
- 40 C
Operating Supply Voltage
3.15 V to 3.45 V
For Use With/related Products
RCM3000
Lead Free Status / Rohs Status
Lead free / RoHS Compliant
Other names
316-1017
RabbitCore RCM3000
C-Programmable Module with Ethernet
User’s Manual
019–0110 • 070831–H

Related parts for 101-0523

101-0523 Summary of contents

Page 1

RabbitCore RCM3000 C-Programmable Module with Ethernet User’s Manual 019–0110 • 070831–H ...

Page 2

... Rabbit and Dynamic C are registered trademarks of Rabbit Semiconductor Inc. Rabbit 3000 and RabbitCore are trademarks of Rabbit Semiconductor Inc. The latest revision of this manual is available on the Rabbit Semiconductor Web site, www.rabbit.com, for free, unregistered download. Rabbit Semiconductor Inc. ...

Page 3

... Rabbit Semiconductor Inc. www.rabbit.com RabbitCore RCM3000 ...

Page 4

... Rabbit Semiconductor Inc. www.rabbit.com RabbitCore RCM3000 ...

Page 5

Chapter 1. Introduction 1.1 RCM3000 Features ...............................................................................................................................1 1.2 Advantages of the RCM3000 ...............................................................................................................3 1.3 Development and Evaluation Tools......................................................................................................3 1.4 How to Use This Manual ......................................................................................................................3 1.4.1 Additional Product Information ....................................................................................................3 1.4.2 Online Documentation ..................................................................................................................4 Chapter 2. Hardware Setup 2.1 Development ...

Page 6

Chapter 5. Software Reference 5.1 More About Dynamic C ..................................................................................................................... 29 5.2 Dynamic C Functions......................................................................................................................... 31 5.2.1 Digital I/O................................................................................................................................... 31 5.2.2 Serial Communication Drivers ................................................................................................... 31 5.2.3 TCP/IP Drivers ........................................................................................................................... 31 5.2.4 Prototyping Board Functions...................................................................................................... 32 5.2.5 Board Initialization ..................................................................................................................... ...

Page 7

... C.7 LCD/Keypad Module Function Calls ................................................................................................82 C.7.1 LCD/Keypad Module Initialization............................................................................................82 C.7.2 LEDs...........................................................................................................................................82 C.7.3 LCD Display...............................................................................................................................83 C.7.4 Keypad........................................................................................................................................98 C.8 Sample Programs .............................................................................................................................101 Appendix D. Power Supply D.1 Power Supplies.................................................................................................................................103 D.1.1 Battery-Backup Circuits...........................................................................................................103 D.1.2 Reset Generator ........................................................................................................................104 D.2 Optional +5 V Output ......................................................................................................................104 Appendix E. Motor Control Features E ...

Page 8

RabbitCore RCM3000 ...

Page 9

The RCM3000 RabbitCore module is designed to be the heart of embedded control systems. The RCM3000 features an inte- grated Ethernet port and provides for LAN and Internet-enabled systems to be built as easily as serial-communication systems. Throughout this manual, ...

Page 10

... There are two production models in the RCM3000 series. If the standard models do not serve your needs, other variations can be specified and ordered in production quantities. Contact your Rabbit Semiconductor sales representative for details. Table 1 below highlights the differences between the two models in the RCM3000 family. ...

Page 11

Advantages of the RCM3000 • Fast time to market using a fully engineered, “ready to run” microprocessor core. • Competitive pricing when compared with the alternative of purchasing and assembling individual components. • Easy C-language program development and debugging ...

Page 12

Online Documentation The online documentation is installed along with Dynamic C, and an icon for the docu- mentation menu is placed on the workstation’s desktop. Double-click this icon to reach the menu. If the icon is missing, use your ...

Page 13

This chapter describes the RCM3000 hardware in more detail, and explains how to set up and use the accompanying Prototyping Board. NOTE: This chapter (and this manual) assume that you have the RCM3000 Development Kit. If you purchased an RCM3000 ...

Page 14

Hardware Connections 2.2.1 Attach Module to Prototyping Board Turn the RCM3000 module so that the Ethernet connector end of the module extends off the Prototyping Board, as shown in Figure 1 below. Align the pins from headers J1 and ...

Page 15

... NOTE: Be sure to use the programming cable (part number 101-0513) supplied with this Development Kit—the programming cable has red shrink wrap around the RS-232 con- verter section located in the middle of the cable ...

Page 16

Connect Power When all other connections have been made, you can connect power to the Prototyping Board. Connect the wall transformer to jack J11 on the Prototyping Board as shown in Figure 3 below. Figure 3. Power Supply Connections ...

Page 17

Run a Sample Program If you already have Dynamic C installed, you are now ready to test your programming connections by running a sample program. If you are using a USB port to connect your computer to the RCM3000 ...

Page 18

... If there are any problems at this point: • Use the Dynamic C Help • Check the Rabbit Semiconductor Technical Bulletin Board at www.rabbit.com/support/bb/. • Use the Technical Support e-mail form at www.rabbit.com/support/. 10 sample program to verify that the PONG ...

Page 19

... R To develop and debug programs for the RCM3000 (and for all other Rabbit Semiconductor hardware), you must install and use Dynamic C. 3.1 Introduction To help familiarize you with the RCM3000 modules, Dynamic C includes several sample programs. Loading, executing and studying these programs will give you a solid hands-on overview of the RCM3000’ ...

Page 20

Sample Programs Of the many sample programs included with Dynamic C, several are specific to the RCM3000. Sample programs illustrating the general operation of the RCM3000, and serial communication are provided in the gram has comments that describe the ...

Page 21

Serial Communication The following sample programs can be found in the —This program demonstrates hardware flow control by configuring • FLOWCONTROL.C Serial Port C (PC3/PC2) for CTS/RTS with serial data coming from TxB at 115,200 bps. One character at ...

Page 22

SWITCHCHAR.C ASCII string on Serial Ports B and C. It also displays the serial data received from both ports in the window. STDIO To set up the Prototyping Board, you will ...

Page 23

Chapter 3 describes the hardware components and principal hardware subsystems of the RCM3000. Appendix A, “RCM3000 Specifica- tions,” provides complete physical and electrical specifications. Figure 4 shows these Rabbit-based subsystems designed into the RCM3000. User’s Manual 4. H ARDWARE Figure ...

Page 24

RCM3000 Digital Inputs and Outputs The RCM3000 has 52 parallel I/O lines grouped in seven 8-bit ports available on headers J1 and J2. The 44 bidirectional I/O lines are located on pins PA0–PA7, PB0, PB2–PB7, PD2–PD7, PE0–PE1, PE3–PE7, PF0–PF7, ...

Page 25

Figure 6 shows the use of the Rabbit 3000 ports in the RCM3000 modules. Figure 6. Use of Rabbit 3000 Ports The ports on the Rabbit 3000 microprocessor used in the RCM3000 are configurable, and so the factory defaults can ...

Page 26

Table 2. RCM3000 Pinout Configurations Pin Pin Name 1 GND 2 STATUS Output (Status) 3–10 PA[7:0] Parallel I/O 11 PF3 Input/Output 12 PF2 Input/Output 13 PF1 Input/Output 14 PF0 Input/Output 15 PC0 Output 16 PC1 Input 17 PC2 Output 18 ...

Page 27

Table 2. RCM3000 Pinout Configurations (continued) Pin Pin Name 1 /RES Reset output 2 PB0 Input/Output 3 PB2 Input/Output 4 PB3 Input/Output 5 PB4 Input/Output 6 PB5 Input/Output 7 PB6 Input/Output 8 PB7 Input/Output 9 PF4 Input/Output 10 PF5 Input/Output ...

Page 28

Table 2. RCM3000 Pinout Configurations (continued) Pin Pin Name 20 PG7 Input/Output 21 PG6 Input/Output 22 PG5 Input/Output 23 PG4 Input/Output 24 /IOWR Output 25 /IORD Input (0,0)—start executing at address zero (0,1)—cold boot from slave port (1,0)—cold boot from ...

Page 29

Memory I/O Interface The Rabbit 3000 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 ...

Page 30

Serial Communication The RCM3000 board does not have an RS-232 or an RS-485 transceiver directly on the board. However, an RS-232 or RS-485 interface may be incorporated on the board the RCM3000 is mounted on. For example, the Prototyping ...

Page 31

Serial Programming Port The RCM3000 serial programming port is accessed using header J3 or over an Ethernet connection via the RabbitLink EG2110. The programming port uses the Rabbit 3000’s Serial Port A for communication. Dynamic C uses the programming ...

Page 32

Serial Programming Cable The programming cable is used to connect the serial programming port of the RCM3000 serial COM port. The programming cable converts the RS-232 voltage levels used by the PC serial port to the ...

Page 33

Figure 9. Switching Between Program Mode and Run Mode A program “runs” in either mode, but can only be downloaded and debugged when the RCM3000 is in the Program Mode. Refer to the Rabbit 3000 Microprocessor User’s Manual gramming port ...

Page 34

Other Hardware 4.4.1 Clock Doubler The RCM3000 takes advantage of the Rabbit 3000 microprocessor’s internal clock dou- bler. A built-in clock doubler allows half-frequency crystals to be used to reduce radiated emissions. The 29.4 MHz frequency specified for the ...

Page 35

... The RCM3000 can accept 128K to 512K of SRAM at U4. 4.5.2 Flash EPROM The RCM3000 can accept 256K to 512K of flash EPROM. 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 36

RabbitCore RCM3000 ...

Page 37

... Dynamic integrated development system for writing embedded software. It runs on an IBM-compatible PC and is designed for use with Rabbit Semiconductor controllers and other controllers based on the Rabbit microprocessor. Chapter 4 provides the libraries and function calls related to the RCM3000. 5.1 More About Dynamic C Dynamic C has been in use worldwide since 1989 specially designed for program- ming embedded systems, and features quick compile and interactive debugging. A com- plete reference guide to Dynamic C is contained in the Dynamic C User’ ...

Page 38

Developing software with Dynamic C is simple. Users can write, compile, and test C and assembly code without leaving the Dynamic C development environment. Debugging occurs while the application runs on the target. Alternatively, users can compile a program to ...

Page 39

Dynamic C Functions 5.2.1 Digital I/O The RCM3000 was designed to interface with other systems, and so there are no drivers written specifically for the I/O. The general Dynamic C read and write functions allow you to customize the ...

Page 40

Prototyping Board Functions The function described in this section is for use with the Prototyping Board. The source code is in the RCM3000.LIB need to modify it for your own board design. Other generic functions applicable to all devices ...

Page 41

... The default installation of a patch or bug fix is to install the file in a directory (folder) dif- ferent from that of the original Dynamic C installation. Rabbit Semiconductor recom- mends using a different directory so that you can verify the operation of the patch without overwriting the existing Dynamic C installation. If you have made any changes to the BIOS or to libraries you have programs in the old directory (folder), make these same changes to the BIOS or libraries in the new directory containing the patch ...

Page 42

RabbitCore RCM3000 ...

Page 43

U 6.1 TCP/IP Connections Programming and development can be done with the RCM3000 RabbitCore modules without con- necting the Ethernet port to a network. However, if you will be running the sample programs that use the Ethernet capability or ...

Page 44

The following options require more care in address selection and testing actions, as conflicts with other users, servers and systems can occur: LAN — Connect the RCM3000’s Ethernet port to an existing LAN, preferably one to • which the development ...

Page 45

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, ...

Page 46

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 47

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 ...

Page 48

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 49

Dynamically Assigned Internet Addresses In many instances, there are no fixed IP addresses. This is the case when, for example, you are assigned an IP address dynamically by your dial-up Internet service provider (ISP) or when you have a ...

Page 50

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 51

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 RCM3000 board together on the same network. This ...

Page 52

How to Set IP Addresses in the Sample Programs With the introduction of Dynamic C 7.30 we have taken steps to make it easier to run many of our sample programs. Instead of the see a macro. This macro ...

Page 53

... IP address automatically.”) You may want to write down the existing values in case you have to restore them later not necessary to edit the gate- way address since the gateway is not used with direct connect. IP 10.10.6.101 Netmask 255.255.255.0 Direct Connection PC to RCM3000 Board User’ ...

Page 54

Run the PINGME.C Sample Program Connect the crossover cable from your computer’s Ethernet port to the RCM3000 board’s RJ-45 Ethernet connector. Open this sample program from the folder, compile the program, and start it running under Dynamic C. When ...

Page 55

... If there are any problems at this point: • Use the Dynamic C Help • Check the Rabbit Semiconductor Technical Bulletin Board at www.rabbit.com/support/bb/. • Use the Technical Support e-mail form at www.rabbit.com/support/. If the sample programs ran fine, you are now ready to go on. ...

Page 56

RabbitCore RCM3000 ...

Page 57

A A. RCM3000 S PPENDIX Appendix A provides the specifications for the RCM3000, and describes the conformal coating. User’s Manual PECIFICATIONS 49 ...

Page 58

A.1 Electrical and Mechanical Characteristics Figure A-1 shows the mechanical dimensions for the RCM3000. Figure A-1. RCM3000 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 59

It is recommended that you allow for an “exclusion zone” of 0.04" (1 mm) around the RCM3000 in all directions when the RCM3000 is incorporated into an assembly that includes other printed circuit boards. This “exclusion zone” that you keep ...

Page 60

Table A-1 lists the electrical, mechanical, and environmental specifications for the RCM3000. Table A-1. RabbitCore RCM3000 Specifications Feature Microprocessor EMI Reduction Ethernet Port Flash Memory SRAM Backup Battery Connection for user-supplied backup battery (to support RTC and SRAM) General-Purpose I/O ...

Page 61

Table A-1. RabbitCore RCM3000 Specifications (continued) Feature Operating Temperature Humidity Connectors (for connection to headers J4 and J5) Board Size A.1.1 Headers The RCM3000 uses headers at J1 and J2 for physical connection to other boards. J1 and J2 are ...

Page 62

A.2 Bus Loading You must pay careful attention to bus loading when designing an interface to the RCM3000. This section provides bus loading information for external devices. Table A-2 lists the capacitance for the various RCM3000 I/O ports. Table A-2. ...

Page 63

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

Page 64

Table A-4 lists the delays in gross memory access time for V Table A-4. Data and Clock Delays V Clock to Address Output Delay (ns) VDD 3.3 6 The measurements are taken at the 50% points ...

Page 65

A.3 Rabbit 3000 DC Characteristics Table A-5 outlines the DC characteristics for the Rabbit 3000 at 3.3 V over the recom- mended operating temperature range from T Note that while the Rabbit 3000 is rated to operate over a voltage ...

Page 66

A.4 I/O Buffer Sourcing and Sinking Limit Unless otherwise specified, the Rabbit 3000 I/O buffers are capable of sourcing and sink- ing 6 current per pin at full AC switching speed. Full AC switching assumes a 29.4 MHz ...

Page 67

A.5 Conformal Coating The areas around the 32 kHz real-time clock crystal oscillator has had the Dow Corning silicone-based 1-2620 conformal coating applied. The conformally coated area is shown in Figure A-5. The conformal coating protects these high-impedance circuits from ...

Page 68

A.6 Jumper Configurations Figure A-6 shows the header locations used to configure the various RCM3000 options via jumpers. Figure A-6. Location of RCM3000 Configurable Positions Table A-7 lists the configuration options. Table A-7. RCM3000 Jumper Configurations Header Description JP1 Flash ...

Page 69

A PPENDIX Appendix B describes the features and accessories of the Proto- typing Board, and explains the use of the Prototyping Board to demonstrate the RCM3000 and to build prototypes of your own circuits. User’s Manual B. P ROTOTYPING B ...

Page 70

B.1 Introduction The Prototyping Board included in the Development Kit makes it easy to connect an RCM3000 module to a power supply and a PC workstation for development. It also pro- vides some basic I/O peripherals (switches and LEDs), as ...

Page 71

B.1.1 Prototyping Board Features —A power-supply jack and a 3-pin header are provided for con- Power Connection • nection to the power supply. Note that the 3-pin header is symmetrical, with both outer pins connected to ground and the center ...

Page 72

RS-232 serial port are available on the Prototyping RS-232 • Board. Refer to the Prototyping Board schematic (090-0137) for additional details. A 10-pin 0.1-inch spacing header strip is installed permit connection of ...

Page 73

B.2 Mechanical Dimensions and Layout Figure B-2 shows the mechanical dimensions and layout for the Prototyping Board. Figure B-2. RCM30/31/32XX Prototyping Board Dimensions NOTE: All measurements are in inches followed by millimeters enclosed in parentheses. All dimensions have a manufacturing ...

Page 74

Table B-1 lists the electrical, mechanical, and environmental specifications for the Proto- typing Board. Table B-1. RCM30/31/32XX Prototyping Board Specifications Parameter Board Size Operating Temperature Humidity Input Voltage Maximum Current Draw (including user-added circuits) Prototyping Area Standoffs/Spacers B.3 Power Supply ...

Page 75

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 to demonstrate the functionality of the RCM3000 right out of the box without any ...

Page 76

B.4.1 Adding Other Components There are pads that can be used for surface-mount prototyping involving SOIC devices. There is provision for seven 16-pin devices (six on one side, one on the other side). There are 10 sets of pads that ...

Page 77

B.4.3 Other Prototyping Board Modules and Options With the RCM3000 plugged into the ceiver, and can act as the “master” relative to another RabbitCore RCM3000, RCM3100, or RCM3200 plugged into the An optional LCD/keypad module is available that can be ...

Page 78

B.5 Use of Rabbit 3000 Parallel Ports Table B-2 lists the Rabbit 3000 parallel ports and their use for the RCM30/31/32XX Prototyping Board. Table B-2. RCM30/31/32XX Prototyping Board Use of Rabbit 3000 Parallel Ports Port I/O PA0–PA7 Output PB0–PB1 Input ...

Page 79

Table B-2. RCM30/31/32XX Prototyping Board Use of Rabbit 3000 Parallel Ports (continued) Port I/O PF0–PF7 Input PG0 Input PG1 Input PG2 Output PG3 Input PG4 Input PG5 Input PG6 Output PG7 Output User’s Manual Use Reserved for future use Switch ...

Page 80

RabbitCore RCM3000 ...

Page 81

... LCD/keypad module on the Prototyping Board. Either version of the LCD/keypad module can be installed at a remote location (24") away. Contact your Rabbit Semi- conductor sales representative or your authorized Rabbit Semiconductor distributor for further assistance in purchasing an LCD/keypad module. User’s Manual C ...

Page 82

Mounting hardware and (24") extension cable are also available for the LCD/key- pad module through your sales representative or authorized distributor. Table C-1 lists the electrical, mechanical, and environmental specifications for the LCD/ keypad module. Table C-1. ...

Page 83

C.2 Contrast Adjustments for All Boards Starting in 2005, LCD/keypad modules were factory-configured to optimize their contrast based on the voltage of the system they would be used in. Be sure to select a KDU5V LCD/keypad module for use with ...

Page 84

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 85

C.4 Header Pinouts Figure C-6 shows the pinouts for the LCD/keypad module. Figure C-6. LCD/Keypad Module Pinouts C.4.1 I/O Address Assignments The LCD and keypad on the LCD/keypad module are addressed by the /CS strobe as explained in Table C-2. ...

Page 86

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

Page 87

C.6 Bezel-Mount Installation This section describes and illustrates how to bezel-mount the LCD/keypad module. Fol- low these steps for bezel-mount installation. 1. Cut mounting holes in the mounting panel in accordance with the recommended dimen- sions in Figure C-8, then ...

Page 88

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 89

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

Page 90

C.7 LCD/Keypad Module Function Calls When mounted on the Prototyping Board, the LCD/keypad module uses the auxiliary I/O bus on the Rabbit 3000 chip. Remember to add the line #define PORTA_AUX_IO to the beginning of any programs using the auxiliary ...

Page 91

C.7.3 LCD Display The functions used to control the LCD display are contained in the located in the Dynamic C DISPLAYS\GRAPHIC void glInit(void); Initializes the display devices, clears the screen. RETURN VALUE None. SEE ALSO glDispOnOFF, glBacklight, glSetContrast, glPlotDot, glBlock, ...

Page 92

Sets display contrast. NOTE: This function is not used with the LCD/keypad module since the support circuits are not available on the LCD/keypad module. void glFillScreen(char pattern); Fills the LCD display screen with a pattern. PARAMETER The ...

Page 93

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 the LCD display area will be clipped. ...

Page 94

Fills a polygon in the LCD page buffer and on the LCD screen if the buffer is unlocked. Any portion of the polygon that is outside the LCD display area will be clipped. If fewer ...

Page 95

Draws a filled circle in the LCD page buffer and on the LCD if the buffer is unlocked. Any portion of the circle that is outside the LCD display area will be clipped. ...

Page 96

Puts an entry from the font table to the page buffer and on the LCD if the buffer is unlocked. Each font character's bitmap is column major and byte-aligned. Any portion ...

Page 97

Provides an interface between the STDIO string-formatting function will call this function, one character at a time, until the entire format- ted string has been parsed. Any portion of the bitmap ...

Page 98

Increments LCD screen locking counter. Graphic calls are recorded in the LCD memory buffer and are not transferred to the LCD if the counter is non-zero. NOTE: glBuffLock() sure to balance the calls not a requirement ...

Page 99

Gets the current method (or color) of pixels drawn by subsequent graphic calls. RETURN VALUE The current brush type. SEE ALSO glSetBrushType void glPlotDot(int x, int y); Draws a single pixel in the LCD buffer, and on the ...

Page 100

Scrolls byte-aligned window left one pixel, right 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 101

Scrolls byte-aligned window down one pixel, top 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 102

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 103

Draws bitmap in the specified space. The data for the bitmap are stored in xmem. This function is like glXPutBitmap, except that it is faster. The restriction is ...

Page 104

TextGotoXY(windowFrame *window, int col, int row); Sets the cursor location on the display of where to display the next character. The display location is based on the height and width of the character to be displayed. NOTE: Execute the ...

Page 105

TextPrintf(struct windowFrame *window, char *fmt, ...); Prints a formatted string (much like printf) on the LCD screen. Only printable characters in the font set are printed, also escape sequences, '\r' and '\n' are recognized. All other escape sequences will ...

Page 106

C.7.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 107

How many times to repeat after low speed repeat None. RETURN VALUE None. SEE ALSO keyProcess, keyGet, keypadDef void keyProcess(void); Scans and processes keypad data for key assignment, debouncing, press and release, ...

Page 108

Configures the physical layout of the keypad with the desired ASCII return key codes. Keypad physical mapping 1 × ['L'] ['U'] ['–'] where 'E' represents the ENTER key 'D' represents Down Scroll 'U' represents ...

Page 109

... LCD when a switch press is detected. The DS1 and DS2 LEDs on the Prototyp- ing Board will also light up. User’s Manual directory. menu ( not still open), compile it using the in the menu. The RCM3000 must be in Run Run SAMPLES\RCM3000\LCD_KEYPAD Compile folder. 101 ...

Page 110

RabbitCore RCM3000 ...

Page 111

A Appendix D provides information on the current requirements of the RCM3000, and includes some background on the chip select circuit used in power management. D.1 Power Supplies The RCM3000 requires a regulated 3.3 V ± 0. power ...

Page 112

... There is provision to have the +5 V supply available on pin 33 of header J2, but the default configuration for the 0 Ω surface-mounted jumpers does not bring out this option. Consult your Rabbit Semiconductor or Rabbit Semiconductor sales representative for more infor- mation on quantity orders for this option. If the +5 V output option is enabled, you will be able to draw ...

Page 113

... A PPENDIX The RCM30/31/32XX Prototyping Board has a header at J6 for a motor control connection. While Rabbit Semiconductor does not have the drivers or a compatible stepper motor control board at this time, this appendix provides additional information about Parallel Port F on the Rabbit 3000 microprocessor to enable you to develop your own application ...

Page 114

E.2 Header J6 The connector × 5, 0.1" pitch header suitable for connecting to an IDC receptacle with the following pin allocations. Table E-1. RCM30/31/32XX Prototyping Board Header J6 Pinout Pin Rabbit 3000 Primary Function 1 Parallel ...

Page 115

... Setting the bit to 0 configures that output as active high or low. Function Register—PFFR, address 00111101 (0x3D), Write-only, no default on reset. This register sets the alternate output function assigned to each of the pins of the port. ...

Page 116

... Upper nibble transfer clock is CLK/2 01 Upper nibble transfer clock is Timer A1 10 Upper nibble transfer clock is Timer B1 11 Upper nibble transfer clock is Timer B2 xx These bits are ignored PFFR 00111101 (0x3D) Value 0 Corresponding port bits function normally 1 Bit 0 carries SCLK_D 1 Bit 1 carries SCLK_C x No effect ...

Page 117

Table E-2. Parallel Port F Registers (continued) Register Name Port F Data Direction Register Bits 0:7 User’s Manual Mnemonic I/O Address PFDDR 00111111 (0x3F) Value 0 Corresponding port bit is an input 1 Corresponding port bit is an output R/W ...

Page 118

E.4 PWM Outputs The Pulse-Width Modulator consists of a 10-bit free-running counter and four width regis- ters. Each PWM output is high for counts out of the 1024-clock count cycle, where n is the value held in ...

Page 119

... PWM output High for single block. Spread PWM output throughout the cycle Address Address = 10001001 (0x89) Address = 10001011 (0x8B) Address = 10001101 (0x8D) Address = 10001111 (0x8F) Description The most significant eight bits for the Pulse-Width Modulator count are stored With a count of n, the PWM output will be high for n +1 clocks out of the 1024 clocks of the PWM counter ...

Page 120

E.6 Quadrature Decoder The two-channel Quadrature Decoder accepts inputs via Parallel Port F from two external optical incremental encoder modules. Each channel of the Quadrature Decoder accepts an in-phase (I) and a quadrature-phase (Q) signal, and provides 8-bit counters to ...

Page 121

The Quadrature Decoder generates an interrupt when the counter increments from 0x00 to 0x01 or when the counter decrements from 0x00 to 0xFF. Note that the status bits in the QDCSR are set coincident with the interrupt, and the interrupt ...

Page 122

... Quadrature Decoder interrupt use Interrupt Priority 1 1. Quadrature Decoder interrupt use Interrupt Priority 10 2. Quadrature Decoder interrupt use Interrupt Priority 11 3. QDC1R Address = 10010100 (0x94) (QDC2R) Address = 10010110 (0x96) Value The current value of the Quadrature Decoder read counter is reported. Address Description Description RabbitCore RCM3000 ...

Page 123

A additional information Getting Started manual ....... 3 online documentation .......... 4 auxiliary I/O bus ................... 21 software ................. 21, 31 battery backup battery life ....................... 104 external battery connec- tions ............................ 103 real-time clock ................ 104 reset ...

Page 124

... TextGotoXY ...............96 TextPrintf ....................97 TextPutChar ................96 TextWindowFrame .....95 LEDs function calls .................82 ledOut .........................82 mounting instructions ........78 remote cable connection ....81 removing and inserting keypad label ...............................76 sample programs .............101 voltage settings ..................75 M MAC addresses .....................40 manuals ...................................3 models factory versions ...................2 motor control applications ....69 motor control option quadrature decoder ..........112 mounting instructions LCD/keypad module ...

Page 125

... RCM3000 CONTROLLED.C ........ 12 FLASHLED1.C ............ 12 FLASHLED2.C ............ 12 IR_DEMO.C ................. 12 TOGGLESWITCH.C .... 12 how to run TCP/IP sample programs ................. 43, 44 how to set IP address ........ 44 LCD/keypad KEYPADTOLED.C .... 101 LCDKEYFUN.C ......... 101 SWITCHTOLED.C ..... 101 LCD/keypad module . 14, 101 PONG.C ........................ 9, 10 serial communication FLOWCONTROL.C ..... 13 PARITY.C .................... 13 SIMPLE3WIRE.C ........ 13 SIMPLE485MASTER.C 14 SIMPLE485SLAVE SIMPLE5WIRE.C ........ 13 SWITCHCHAR.C ........ 14 TCP/IP .............................. 37 BROWSELED.C .......... 46 DISPLAY_MAC.C ....... 40 ECHOCLIENT ...

Page 126

RabbitCore RCM3000 ...

Page 127

RCM3000 Schematic www.rabbit.com/documentation/schemat/090-0136.pdf 090-0137 RCM30/31/32XX Prototyping Board Schematic www.rabbit.com/documentation/schemat/090-0137.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 119 ...

Page 128

...

Related keywords