C-programmable single-board computer with networking (144 pages)
Summary of Contents for Rabbit Smartcat
Page 1
Smartcat (BL2100) C-Programmable Single-Board Computer with Ethernet and Operator Interface User’s Manual 019–0103_M...
Page 2
Rabbit, RabbitCore, and Dynamic C are registered trademarks of Digi International Inc. Rabbit 2000 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. Digi8 International Inc.
ABLE OF ONTENTS Chapter 1. Introduction 1.1 BL2100 Description..........................1 1.2 BL2100 Features...........................1 1.2.1 Connector Options ........................2 1.3 Optional Add-Ons..........................3 1.4 Development and Evaluation Tools......................4 1.4.1 Tool Kit ............................4 1.4.2 Software ............................5 1.4.3 Online Documentation ........................5 1.5 CE Compliance .............................6 1.5.1 Design Guidelines .........................7 1.5.2 Interfacing the BL2100 to Other Devices ..................7 Chapter 2.
Page 4
A.1.1 Exclusion Zone .......................... 64 A.1.2 Headers ............................65 A.2 Conformal Coating ..........................66 A.3 Jumper Configurations ........................67 A.4 Use of Rabbit 2000 Parallel Ports ..................... 69 A.5 I/O Address Assignments........................71 Appendix B. Power Supply B.1 Power Supplies ..........................73 B.1.1 Power for Analog Circuits ......................
LCD/keypad module are available, and may be wall-mounted. 1.1 BL2100 Description The BL2100 is an advanced single-board computer that incorporates the powerful Rabbit 2000 microprocessor, flash memory, static RAM, digital I/O ports, A/D converter inputs, D/A converter outputs, RS-232/RS-485 serial ports, and a 10Base-T Ethernet port.
RabbitCore Module Used RCM2200 RCM2300 Additional 512K flash/512K SRAM memory options are available for custom orders involving nominal lead times. Contact your Rabbit sales representative or authorized distributor for more information. Appendix A provides detailed specifications. 1.2.1 Connector Options In addition to the standard screw-terminal connectors supplied on BL2100 boards, IDC headers, bottom-mount sockets, and polarized friction-lock terminals may be factory- installed instead.
1.3 Optional Add-Ons • Plastic enclosure (can be wall-mounted or panel-mounted) with LCD/keypad module that comprises a 122 × 32 LCD graphic display, 7- key keypad, and seven LEDs. The plastic enclosure consists of a base and a cover for an assembly made up of the BL2100 with the LCD/keypad module plugged in.
1.4.2 Software The BL2100 is programmed using version 7.06 or later of Rabbit’s Dynamic C. A compatible . Dynamic C v. 9.60 includes the popular µC/OS- version is included on the Tool Kit CD-ROM II real-time operating system, point-to-point protocol (PPP), FAT file system, RabbitWeb, and other select libraries that were previously sold as individual Dynamic C modules.
These limits apply over the range of 30–230 MHz. The limits are 7 dB higher for frequencies above 230 MHz. Although the test range goes to 1 GHz, the emissions from Rabbit-based systems at frequencies above 300 MHz are generally well below background noise levels.
• When connecting the BL2100 single-board computer to outdoor cables, the customer is responsible for providing CE-approved surge/lighting protection. • Rabbit recommends placing digital I/O or analog cables that are 3 m or longer in a metal conduit to assist in maintaining CE compliance and to conform to good cable design practices.
2. G ETTING TARTED Chapter 2 explains how to connect the programming cable and power supply to the BL2100. 2.1 BL2100 Connections 1. Remove the RabbitCore module from the BL2100 main board, and set the module aside. The module is removed to allow access to the mounting holes on the main BL2100 board, and will be plugged back in to the main board later.
Page 16
The plastic enclosure base is offered as a separate option when individual BL2100 boards are purchased. NOTE: Appendix D, “Plastic Enclosure,” provides additional information and specifications for the plastic enclosure. Smartcat (BL2100)
Page 17
3. Reconnect the RabbitCore module to headers J16 and J17 on the BL2100 main board it was removed from earlier as shown in Figure 4. Be careful to align the pins over the headers, and do not bend them as you press down to mate the module with the BL2100 main board.
Page 18
NOTE: Some PCs now come equipped only with a USB port. It may be possible to use an RS-232/USB converter with the programming cable supplied with the Tool Kit. An RS- 232/USB converter (part number 20-151-0178) is available through the store. Note that not all RS-232/USB converters work with Dynamic C. Smartcat (BL2100)
Page 19
5. Connect the power supply. First, prepare the AC adapter for the country where it will be used by selecting the plug. The BL2100 Tool Kit presently includes Canada/Japan/U.S., Australia/N.Z., U.K., and European style plugs. Snap in the top of the plug assembly into the slot at the top of the AC adapter as shown in Figure 5, then press down on the spring-loaded clip below the plug assembly to allow the plug assembly to click into place.
One icon is for Dynamic C, one 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 the optional Dynamic C Rabbit Embedded Security Pack, install it after installing Dynamic C.
Section 5.2.3, “Run the PINGME.C Demo,” tests the TCP/IP portion of the board. 2.4.1 Troubleshooting If Dynamic C cannot find the target system (error message "No Rabbit Processor Detected." • Check that the BL2100 is powered correctly — to the the AC adapter should be plugged in positions on screw-terminal header J5 (IDC header J4).
Dynamic C TCP/IP User’s Manual, also in the online documentation set. 2.5.1 Technical Support NOTE: If you purchased your BL2100 through a distributor or Rabbit partner, contact the distributor or partner first for technical support. If there are any problems at this point: •...
Chapter 3 describes the principal subsystems for the BL2100. •Digital I/O •Serial Communication •A/D Converter Inputs •D/A Converter Outputs •Analog Reference Voltage Circuit •Memory •External Interrupts Figure 7 shows these Rabbit-based subsystems designed into the BL2100. RS-232 Data Digital 11 MHz 32 kHz Register Input...
OUT04 IN16 OUT05 OUT15 OUT06 OUT14 OUT07 OUT13 OUT08 OUT12 OUT09 OUT11 OUT10 EGND Figure 8(a). BL2100 Pinouts (screw-terminal headers) NOTE: Screw-terminal header J2 and the associated analog I/O are not available on the BL2110 and the BL2130. Smartcat (BL2100)
3.1.1 Headers and Screw Terminals Standard BL2100 models are equipped with two 1 × 12 screw-terminal strips (J8 and J14), and two 1 × 14 screw-terminal strips (J5 and J11). The BL2100 and BL2110 also have the RJ-45 Ethernet jack and one 1 × 16 screw-terminal strip (J2). There is provision on the circuit board to accommodate one of the following types of connectors instead of the screw-terminal strips.
+K2 or down to 0 V in banks of eight by changing a surface-mounted 0 resistor as shown in Figure 9. 27 kW 100 kW Rabbit 2000 1 nF Microprocessor Figure 9. BL2100 Digital Inputs [Pulled Up—Factory Default] NOTE: If the inputs are pulled up to +K2, the voltage range over which the digital inputs are protected changes to K2 –...
3.2.2 Digital Outputs The BL2100 has 16 digital outputs, OUT00–OUT15, which can each sink or source up to 200 mA. Figure 11 shows a wiring diagram for using the digital outputs in a sinking or a souring configuration. All the digital outputs sink and source actively. They can be used as high-side drivers, low-side drivers, or as an H-bridge driver.
Page 28
GND returns according to the two banks of digital outputs. For the H bridge, which is shown in Figure 12, K1 and K2 should be the same if two digital out- LOAD puts used for the H bridge are on different banks. Figure 12. H Bridge Smartcat (BL2100)
15 m. 3.3.2 RS-485 The BL2100 has one RS-485 serial channel, which is connected to the Rabbit 2000 Serial Port D through an RS-485 transceiver. The half-duplex communication uses the Rabbit 2000’s PB6 pin to control the transmit enable on the communication line.
Page 30
485– to 485– using single twisted-pair wires (nonstranded, tinned) as shown in Figure 13. Note that a common ground is recommended. Ground recommended R140 ADCIN1 ADCIN0 R140 ADCIN1 ADCIN0 PE5-INT 485 485+ IN15 IN14 R140 ADCIN1 ADCIN0 Figure 13. BL2100 Multidrop Network Smartcat (BL2100)
Page 31
The BL2100 comes with a 220 termination resistor and two 681 bias resistors installed and enabled with jumpers across pins 1–2 and 5–6 on header JP1, as shown in Figure 14. 485+ bias 681 W R176 C112 TVS1 R173 RP11 termi-...
The factory default is for the 0 resistor “jumper” at R29 to be installed. In high-noise environments, remove R29 and ground the transformer/connector assembly directly through the chassis ground. This will be especially helpful to minimize ESD and/or EMI problems. Smartcat (BL2100)
2. It can be driven low during an interrupt acknowledge cycle. 3. It can also serve as a general-purpose output. The /RESET_IN pin is an external input that is used to reset the Rabbit 2000 and the onboard peripheral circuits on the RabbitCore module. The serial programming port can be used to force a hard reset on the RabbitCore module by asserting the /RESET_IN signal.
The programming cable is used to connect the programming port of the RabbitCore module to a PC serial COM port. The programming cable converts the RS-232 voltage levels used by the PC serial port to the TTL voltage levels used by the Rabbit 2000. When the...
3.5 A/D Converter Inputs The single 14-channel A/D converter chip used in the BL2100 has a resolution of 12 bits (models BL2100 and BL2120 only). Eleven of the 14 channels are available externally, and three are used internally for the reference voltages: 4.096 V (V ), 2.048 V (V /2), and Analog Ground.
You may calibrate the A/D converter inputs at a later time using the software functions described in Section 4.4.5, “D/A Converter Outputs.” The GETCALIB.C and the SAVECALIB.C sample programs in the Dynamic C SAMPLES\BL2100\ Calib_Save_Retrieve folder illustrate how to retrieve and save calibration data. Smartcat (BL2100)
3.7 Analog Reference Voltage Circuit Figure 21 shows the analog voltage reference circuit. 300 W 4.096 V 100 nF 14 kW 25.5 kW 10.2 kW ADREF 2.926 V 1.707 V 2.048 V 25.5 kW 10 kW 100 nF 100 nF 25.5 kW 100 nF Figure 21.
TSOP case. The standard BL2100 modules comes with one 256K flash memory. NOTE: Rabbit recommends that any customer applications should not be constrained by the sector size of the flash memory since it may be necessary to change the sector size in the future.
CMOS-level digital input or output, or to generate a PWM signal. When using pin 11 as a CMOS-level digital input or output, use the standard Rabbit 2000 register function configuration for PE5 (on Parallel Port E) to set this pin up for your intended use.
3.9.3 Spectrum Spreader BL2100 boards that carry the CE mark on their RabbitCore module have a Rabbit 2000 microprocessor that features a spectrum spreader, which helps to mitigate EMI problems. By default, the spectrum spreader is on automatically for BL2100 boards that carry the CE mark when used with Dynamic C 7.30 or later versions, but the spectrum spreader may...
Dynamic C is an integrated development system for writing embedded software. 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 4 provides the libraries, function calls, and sample pro- grams related to the BL2100.
Page 42
LCD display and keypad drivers. • Powerful language extensions for cooperative or preemptive multitasking • Loader utility program to load binary images into Rabbit-based targets in the absence of Dynamic C. • Provision for customers to create their own source code libraries and augment on-line help by creating “function description”...
The default installation of a patch or bug fix is to install the file in a directory (folder) dif- ferent from that of the original Dynamic C installation. Rabbit recommends using a differ- ent directory so that you can verify the operation of the patch without overwriting the existing Dynamic C installation.
PUTS.C displays the serial data received from both ports in the window. STDIO —This program echoes characters over Serial Port B to Serial Port C. It • RELAYCHR.C must be run with a serial utility such as Hyperterminal. Smartcat (BL2100)
The following sample programs are found in the subdirectory in RS485 SAMPLES\BL2100 —This program demonstrates a simple RS-485 transmission of lower case • MASTER.C letters to a slave BL2100. The slave will send back converted upper case letters back to the master BL2100 and display them in the window.
SAMPLES\RTCLOCK set the real-time clock 4.2.7 TCP/IP Sample Programs TCP/IP sample programs are described in Chapter 5. 4.2.8 LCD/Keypad Module Sample Programs Sample programs for the LCD/keypad module are described in Section C.7. Smartcat (BL2100)
–libraries associated with the keypad. • KEYPADS The LCD/keypad module functions are described in Section C.8. Other generic functions applicable to all devices based on the Rabbit 2000 microprocessor are described in the Dynamic C Function Reference Manual. User’s Manual...
If the LCD/keypad module is installed, this function will turn off LED DS1 to indi- cate that the initialization was successful. The ports are initialized according to Table A-3. SEE ALSO digOut, digIn, serMode, anaOut, anaIn, anaInDriver, anaOutDriver Smartcat (BL2100)
4.4.2 Digital I/O void digOutConfig(unsigned int outputMode); Each of the BL2100 high-current outputs (OUT00–OUT15) has the capability of being configured in software as either sinking or sourcing using the digOutConfig function. Execute digOutConfig at the start of your application to initially set OUT00–OUT15 to be OFF for the type of circuit that you have, either sinking or sourcing.
Page 50
A run-time error will occur for the following conditions: out of range. channel was not executed before executing brdInit digIn PARAMETER channel is the input channel number (0–23) RETURN VALUE The state of the input (0 or 1). SEE ALSO brdInit, digOut Smartcat (BL2100)
For more information, see the Dynamic C User’s Manual and Technical Note 213, Rabbit Serial Port Software. Use the following function calls with the BL2100.
A/D converter channel value (0–4095). volts2 is the voltage corresponding to the second A/D converter channel value (-10 V to +10 V). RETURN VALUE 0 if successful. -1 if not able to make calibration constants. SEE ALSO anaIn, anaInVolts, brdInit Smartcat (BL2100)
Page 53
int anaInDriver(unsigned char cmd, char len); Reads the voltage of an analog input channel by serially clocking out an 8-bit command to the A/D con- verter. The driver has been designed for the Texas Instruments TLC2543 A/D converter used on the BL2100 and the BL2120.
Page 54
Reads the calibration constants, gain, and offset from the simulated EEPROM in flash memory (located in reserved user block memory area 0x1C00–0x1FFF). PARAMETER channel is the A/D converter input channel (0–10). RETURN VALUE 0 if successful. -1 if address is invalid or out of range. SEE ALSO anaInEEWr, brdInit Smartcat (BL2100)
Page 55
int anaInEEWr(unsigned int channel); Writes the calibration constants, gain, and offset to the simulated EEPROM in flash memory (located in reserved user block memory area 0x1C00–0x1FFF). PARAMETER channel is the A/D converter input channel (0–10) for which the calibration constants will be read. RETURN VALUE 0 if successful.
D/A converter value (0–4095). volts2 is the voltage corresponding to the second D/A converter value (0 V to +10 V). RETURN VALUE 0 if sucessful. -1 if not able to make calibration constants. SEE ALSO anaOut, anaOutVolts, brdInit Smartcat (BL2100)
Page 57
void anaOutDriver(int power_control, int speed_control, int channel, unsigned int rawcount); Sets the voltage of a D/A converter output channel by serially clocking in 16 bits to a D/A converter using the following format: D15, D12 Register R1, Register R0 00—Write data to DAC OUTB 01—Write data to buffer 10—Write data to DAC OUTA 11—Reserved...
Page 58
Sets the voltage of a D/A converter output channel by using the previously set calibration constants to calculate the correct data values. PARAMETERS channel is the D/A converter output channel (0–3). voltage is the voltage desired on the output channel. RETURN VALUE None. SEE ALSO anaOut, anaOutCalib, brdInit Smartcat (BL2100)
Page 59
int anaOutEERd(unsigned int channel); Reads the calibration constants, gain, and offset from the simulated EEPROM in flash memory (located in reserved user block memory area 0x1C00–0x1FFF). PARAMETER channel is the D/A converter output channel (0–3). RETURN VALUE 0 if successful. -1 if address or range is invalid.
• Two RJ-45 straight through Ethernet cables and a hub, or an RJ-45 crossover Ethernet cable. The Ethernet cables and Ethernet hub are available from Rabbit in a TCP/IP tool kit. More information is available at www.rabbit.com. 1. Connect the AC adapter and the programming cable as shown in Chapter 2, “Getting Started.”...
Page 62
When working with the BL2100, the green light is on when a program is running and the board is properly connected either to an Ethernet hub or to an active Ethernet card. The orange light flashes each time a packet is received. Smartcat (BL2100)
5.2 TCP/IP Sample Programs We have provided a number of sample programs demonstrating various uses of TCP/IP for networking embedded systems. These programs require that you connect your PC and the BL2100 together on the same network. This network can be a local private network (pre- ferred for initial experimentation and debugging), or a connection via the Internet.
IP Address : 10.10.6.101 Netmask : 255.255.255.0 Default gateway : 10.10.6.1 4. Click <OK> <Close> to exit the various dialog boxes. BL2100 IP 10.10.6.101 Board Netmask 255.255.255.0 User’s PC Ethernet crossover cable Direct Connection PC to BL2100 Board Smartcat (BL2100)
5.2.3 Run the PINGME.C Demo Connect the crossover cable from your computer’s Ethernet port to the BL2100’s RJ-45 Ethernet connector. Open this sample program from the folder, SAMPLES\TCPIP\ICMP compile the program, and start it running under Dynamic C. When the program starts run- ning, the green light on the BL2100 should be on to indicate an Ethernet connection is made.
TCP/IP. 5.3 Where Do I Go From Here? NOTE: If you purchased your BL2100 through a distributor or Rabbit partner, contact the distributor or partner first for technical support.
A.1 Electrical and Mechanical Specifications Figure A-1 shows the mechanical dimensions for the BL2100. Figure A-1. BL2100 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). Smartcat (BL2100)
Page 69
LCD/keypad. Table A-1. BL2100 Specifications Feature BL2100 BL2110 BL2120 BL2130 ® Microprocessor Rabbit 2000 at 22.1 MHz 10Base-T, LNK and ACT LEDs Ethernet Port None Flash Memory 256K (standard) SRAM 128K (standard) Panasonic CR2330 or equivalent 3 V lithium coin type, 265 mA·h Backup Battery standard using onboard battery holder;...
A.1.2 Headers The BL2100 has an option for 0.1" IDC headers, friction-lock connectors, or bottom- mount sockets at J1, J4, J7, J10, and J13 for physical connection to other boards or ribbon cables. The holes on the “outside” edges of the connector locations are the holes used by the friction-lock connectors and by the holes in the bottom-mount sockets.
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 Rabbit Technical Note TN303, Conformal Coatings, in the online documentation set.
A.3 Jumper Configurations Figure A-5 shows the header locations used to configure the various BL2100 options via jumpers. Figure A-5. Location of BL2100 Configurable Positions User’s Manual...
Page 74
3 and 4 are not actually connected to anything, and this configuration is a “parking” configuration for the jumpers so that they will be readily available should you need to enable the termination and bias resistors in the future. Smartcat (BL2100)
/RESET Clock Doubler Backup Battery Flash Support Figure A-6. BL2100 Rabbit-Based Subsystems Table A-3 lists the Rabbit 2000 parallel ports and their use in the BL2100. Table A-3. Use of Rabbit 2000 Parallel Ports Port Signal Output Function State Input...
Page 76
Table A-3. Use of Rabbit 2000 Parallel Ports (continued) Port Signal Output Function State 1 = standard (JP2:1–2) I/O Configuration Option Input (header JP2) 0 = custom (JP2:2–3) Analog Circuit Option 1 = BL2100/BL2120 (JP3:1–2) Input (header JP3) 0 = BL2110/BL2130 (JP3:2–3)
A.5 I/O Address Assignments Table A-4 lists the external I/O addresses for the digital inputs and outputs. Table A-4. Digital I/O Addresses External Name Function Address 0000 Digital inputs IN00–07, read only DIPA 0001 Digital outputs OUT00–OUT07, write only DOPA 0002 Digital inputs IN08–15, read only DIPB...
B. P PPENDIX OWER UPPLY Appendix B describes the power circuitry provided on the BL2100. B.1 Power Supplies Power is supplied to the BL2100 via header J5/J4. The BL2100 is protected against reverse polarity by a diode at D1 as shown in Figure B-1. SWITCHING POWER REGULATOR +RAW J5/J4...
The drain on the battery is typically less than 4 µA when external power is applied, and so the expected BL2100 battery in-service life is 265 mA·h ----------------------- - 7.5 years. 4 µA A long-life 950 mA·h solder-in battery is also provided for in the board layout. Smartcat (BL2100)
B.2.1 Replacing the Backup Battery The battery is user-replaceable, and is fitted in a battery holder. To replace the battery, lift up on the spring clip and slide out the old battery. Use only a Panasonic CR2330 or equiv- alent replacement battery, and insert it into the battery holder with the + side facing up. NOTE: The SRAM contents and the real-time clock settings will be lost if the battery is replaced with no power applied to the BL2100.
Vcc and VRAM. B.2.4 Reset Generator The BL2100 module uses a reset generator on the module, U1, to reset the Rabbit 2000 microprocessor when the voltage drops below the voltage necessary for reliable operation. The reset occurs between 4.50 V and 4.75 V, typically 4.63 V.
B.3 Chip Select Circuit Figure B-4 shows a schematic of the chip select circuit located on the BL2100 module. VRAM 100 kW /CSRAM /CS1 VRAM SWITCH /RESET _ OUT Figure B-4. Chip Select Circuit The current drain on the battery in a battery-backed circuit must be kept at a minimum. When the BL2100 is not powered, the battery keeps the SRAM memory contents and the real-time clock (RTC) going.
60 cm (24") away. The version without a bezel is also sold with the enclosure described in Appendix D. Contact your Rabbit sales represen- tative or your authorized distributor for further assistance in purchasing an LCD/keypad module.
Page 86
NOTE: All measurements are in inches followed by millimeters enclosed in parentheses. All dimen- sions have a manufacturing toler- ance of ±0.01" (0.25 mm). 0.200 0.500 (5.1) (12.7) 1.450 (36.8) 2.200 (55.9) Figure C-2. User Board Footprint for LCD/Keypad Module Smartcat (BL2100)
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 the BL2100 — these modules operate at 5 V. You may adjust the contrast using the potentiometer at R2 as shown in Figure C-3.
Figure C-5. Keypad label is located under the blue keypad matte. Figure C-5. Removing and Inserting Keypad Label The sample program in the folder KEYBASIC.C SAMPLES\LCD_KEYPAD\122x32_1x7 shows how to reconfigure the keypad for different applications. Smartcat (BL2100)
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 PE7 strobe as explained in Table C-2. Table C-2.
Figure C-7. Be careful to align the pins over the headers, and do not bend them as you press down to mate the LCD/keypad module with the BL2100 main board. R135 R134 U8 U7 Y2 C2 Y1 C4 EGND Figure C-7. Install LCD/Keypad Module on BL2100 Main Board Smartcat (BL2100)
C.5.1 Programming Cable Tips Once the LCD/keypad module is in place on the BL2100, it is not possible to remove or attach the programming cable to/from the BL2100 programming port. You will have to remove, or at least lift up, the LCD/keypad module while you connect or disconnect the programming cable.
Page 92
Once you have finished programming the LCD/keypad module, you should disconnect the programming cable from the BL2100 programming port, remembering to first remove, or at least lift up, the LCD/keypad module, disconnect the programming cable, and finally mount the LCD/keypad module back firmly on the BL2100 main board. Smartcat (BL2100)
C.6 Bezel-Mount Installation This section describes and illustrates how to bezel-mount the LCD/keypad module designed for remote installation. Follow these steps for bezel-mount installation. 1. Cut mounting holes in the mounting panel in accordance with the recommended dimen- sions in Figure C-11, then use the bezel faceplate to mount the LCD/keypad module onto the panel.
Page 94
Do not tighten each screw fully before moving on to the next screw. Apply only one or two turns to each screw in sequence until all are tightened manually as far as they can be so that the gasket is compressed and the plastic bezel faceplate is touching the panel. Smartcat (BL2100)
Figure C-13. Connecting LCD/Keypad Module to BL2100 Note the locations and connections relative to pin 1 on both the BL2100 and the LCD/key- pad module. Rabbit offers 2 ft. (60 cm) extension cables. Contact your authorized distributor or sales representative for more information. User’s Manual...
GRAPHIC.LIB of what is demonstrated. 1. Font initialization. 2. Text window initialization. 3. Text window, end-of-line wraparound, end-of-text window clipping, line feed, and carriage return. 4. Creating 2 different TEXT windows for display. 5. Displaying different FONT sizes. Smartcat (BL2100)
Page 97
The following sample programs, found in the SAMPLES/LCD_Keypad/122x32_1x7/ folder, are targeted at the Ethernet-enabled versions of the BL2100, the BL2100 TCPIP and the BL2110. Remember to configure the IP address, netmask, and gateway as indi- cated in the sample programs. —This program implements a web server that allows e-mail messages to •...
4 = LED DS5 5 = LED DS6 6 = LED DS7 value is the value used to control whether the LED is on or off (0 or 1). 0 = off 1 = on RETURN VALUE None. SEE ALSO brdInit Smartcat (BL2100)
C.8.2 LCD Display The functions used to control the LCD display are contained in the Dynamic C DISPLAYS\ library folder. When x and y coordinates on the display screen GRAPHIC\GRAPHIC.LIB are specified, x can range from 0 to 121, and y can range from 0 to 31. These numbers rep- resent pixels from the top left corner of the display.
Page 100
RETURN VALUE None. SEE ALSO glFillScreen, glBlankScreen, glPlotPolygon, glPlotCircle Smartcat (BL2100)
Page 101
void glPlotVPolygon(int n, int *pFirstCoord); 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. If fewer than 3 vertices are specified, the function will return without doing anything.
Page 102
(in pixels). RETURN VALUE None. SEE ALSO glFillCircle, glPlotPolygon, glFillPolygon Smartcat (BL2100)
Page 103
void glFillCircle(int xc, int yc, int rad); 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. PARAMETERS xc is the x coordinate of the center of the circle.
Page 104
The actual step increments depend on the height and width of the font being displayed, which are multi- plied by the step values. PARAMETERS stepX is the glPrintf x step value stepY is the glPrintf y step value RETURN VALUE None. SEE ALSO Use glGetPfStep() to examine the current x and y printing step direction. Smartcat (BL2100)
Page 105
int glGetPfStep(void); Gets the current glPrintf() printing step direction. Each step direction is independent of the other, and is treated as an 8-bit signed value. 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.
Page 106
RETURN VALUE None. SEE ALSO glBuffUnlock, glSwap void glBuffUnlock(void); Decrements the LCD screen locking counter. The contents of the LCD buffer are transferred to the LCD if the counter goes to zero. RETURN VALUE None. SEE ALSO glBuffLock, glSwap Smartcat (BL2100)
Page 107
void glSwap(void); Checks the LCD screen locking counter. The contents of the LCD buffer are transferred to the LCD if the counter is zero. RETURN VALUE None. SEE ALSO (located in the library specifically for the LCD glBuffUnlock, glBuffLock, _glSwapData that you are using) void glSetBrushType(int type);...
Page 108
8, otherwise truncates. rows is the number of rows in the window. RETURN VALUE None. SEE ALSO glHScroll, glLeft1 Smartcat (BL2100)
Page 109
void glUp1(int left, int top, int cols, int rows); Scrolls byte-aligned window up one pixel, bottom column is filled by current pixel type (color). PARAMETERS left is the top left corner of bitmap, must be evenly divisible by 8, otherwise truncates. top is the top left corner of the bitmap.
Page 110
8. rows is the number of rows in the window. nPix is the number of pixels to scroll within the defined window (a negative value will produce a scroll to the left). RETURN VALUE None. SEE ALSO glVScroll Smartcat (BL2100)
Page 111
void glVScroll(int left, int top, int cols, int rows, int nPix); 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 must be byte-aligned. Parameters will be verified for the following: 1.
Page 112
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. Smartcat (BL2100)
Page 113
void TextGotoXY(windowFrame *window, int col, int row); Sets the cursor location to display the next character. The display location is based on the height and width of the character to be displayed. NOTE: Execute the function before using this function. TextWindowFrame PARAMETERS *window is a pointer to a font descriptor.
Page 114
TextWindowFrame PARAMETERS *window is a pointer to a font descriptor. *fmt is a formatted string..are formatted string conversion parameter(s). EXAMPLE TextPrintf(&TextWindow, "Test %d\n", count); RETURN VALUE None. SEE ALSO TextGotoXY, TextPutChar, TextWindowFrame, TextCursorLocation Smartcat (BL2100)
C.8.3 Keypad The functions used to control the keypad are contained in the located in the Dynamic C library folder. KEYPADS\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 cCntLo, char cSpdHi);...
Page 116
The next keypress, or 0 if 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 Smartcat (BL2100)
Page 117
void keypadDef(); Configures the physical layout of the keypad with the default ASCII return key codes. Keypad physical mapping 1 x 7 ['L'] ['U'] ['D'] ['R'] ['–'] ['+'] ['E'] where 'D' represents Down Scroll 'U' represents Up Scroll 'R' represents Right Scroll 'L' represents Left Scroll '–' represents Page Down '+' represents Page Up...
D. P PPENDIX LASTIC NCLOSURE The plastic enclosure provides a secure way to protect your BL2100. The enclosure itself may be mounted on any flat surface. The complete plastic enclosure consists of a base and a cover. The base alone is a convenient surface on which to mount the BL2100, and also provides a means to mount the BL2100 on any flat surface.
Page 121
3. Reconnect the RabbitCore module to headers J16 and J17 on the BL2100 main board as shown in Figure D-3. Be careful to align the pins over the headers, and do not bend them as you press down to mate the module with the BL2100 main board. NOTE: If you are working with more than one BL2100 at a time, take care to keep the BL2100 main boards and their corresponding RabbitCore modules paired since the RabbitCore modules store calibration constants specific to the BL2100 main board to...
4-40 × 7/8 screws supplied. R181 R132 R135 R151 R134 R158 U8 U7 Y1 C4 EGND Mounting screws Figure D-5. Attach Enclosure Top D.2 Dimensions Figure D-6 shows the dimensions for the plastic enclosure. Smartcat (BL2100)
Page 123
1.375 (35) 4.875 (124) 3.603 (92) 0.25 2.113 1.375 (6.4) (54) (35) 4.853 (123) Figure D-6. Plastic Enclosure Dimensions When fully assembled with the BL2100 and the LCD/keypad module installed, the total height of the plastic enclosure will be 1.5" (38 mm). NOTE: All measurements are in inches followed by millimeters enclosed in parentheses.
E. D PPENDIX EMONSTRATION OARD Appendix E shows how to connect the Demonstration Board to the BL2100. E.1 Connecting Demonstration Board Before running sample programs based on the Demonstration Board, you will have to con- nect the Demonstration Board from the BL2100 Tool Kit to the BL2100 board. Proceed as follows.
Page 126
(Header J5) (Header J1) +RAW LED1 LED2 LED3 LED4 · · Jumpers: IN00 · · H1: None DEMO BOARD BUZZER IN01 · · H2: As shown IN02 IN03 Figure E-1. General Digital Input Connections Between BL2100 and Demonstration Board Smartcat (BL2100)
Page 128
H2: As shown OUT02 LED3 OUT03 LED4 Figure E-3. SSI.C Connections Between BL2100 and Demonstration Board NOTE: +K1 and +K2 on screw-terminal header J8 must be connected to +RAW on screw-terminal header J5 as shown in Figure E-3. Smartcat (BL2100)
Need help?
Do you have a question about the Smartcat and is the answer not in the manual?
Questions and answers