151-0153 Rabbit Semiconductor, 151-0153 Datasheet

no-image

151-0153

Manufacturer Part Number
151-0153
Description
ASSEMBLY - RABBITFLEX CABLES
Manufacturer
Rabbit Semiconductor
Series
RabbitFLEX™r
Datasheet

Specifications of 151-0153

Accessory Type
Cable Assembly
For Use With/related Products
BL300F
Lead Free Status / RoHS Status
Vendor undefined / Vendor undefined
RabbitFLEX™ BL300F
User’s Manual
019-0155 • 070720-D
The latest revision of this manual is available on the Rabbit Web site,
www.rabbit.com, for free, unregistered download.

Related parts for 151-0153

151-0153 Summary of contents

Page 1

RabbitFLEX™ BL300F User’s Manual 019-0155 • 070720-D The latest revision of this manual is available on the Rabbit Web site, www.rabbit.com, for free, unregistered download. ...

Page 2

RabbitFLEX BL300F User’s Manual Part Number 019-0155 • 070720–D • Printed in U.S.A. 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 Rabbit. ...

Page 3

Chapter 1: RabbitFLEX BL300F Introduction 1.1 RabbitFLEX BL300F Options............................................................................................................................ 1 1.2 The RabbitFLEX Configurator ........................................................................................................................... 2 1.2.1 Configurator Access .................................................................................................................................... 2 1.2.2 Ordering Information and History .............................................................................................................. 2 1.2.3 Assumptions ................................................................................................................................................ 2 1.3 RabbitFLEX Tool Kit ......................................................................................................................................... 3 1.4 CE ...

Page 4

Connector Pinout Diagram ........................................................................................................................24 4.2.1.1 Connector 1 ........................................................................................................................................25 4.2.1.2 Connector 2 ........................................................................................................................................25 4.2.1.3 Connector 3 and 4 ..............................................................................................................................26 4.2.1.4 Connector 5 ........................................................................................................................................26 4.2.1.5 Connector 6 ........................................................................................................................................27 4.2.2 Connector Mating Information ..................................................................................................................27 4.3 RabbitFLEX BL300F Option Specifications .................................................................................................... 28 4.3.1 ...

Page 5

... B.3 Reset Generator .............................................................................................................................................. 134 B.4 Power On / Reset State................................................................................................................................... 135 Appendix C. Demonstration Board C.1 Demonstration Board Connections ................................................................................................................ 137 Appendix D. RabbitFLEX Keypad/Display Kit D.1 Keypad ........................................................................................................................................................... 141 D.4 LCD Module .................................................................................................................................................. 144 Schematics Index RabbitFLEX User’s Manual www.rabbit.com 129 133 137 141 151 153 iii ...

Page 6

Table of Contents ...

Page 7

R ABBIT We all know you cannot fit a square peg into a round hole. But sometimes that is exactly what you are asked to do when forced to choose an off-the-shelf single-board computer (SBC) for your embedded sys- ...

Page 8

Keypad Range of matrix keypad options where m+n <=8 • LCD With or without backlight and/or contrast control • Power Routing 5 V available on all user-selectable connectors 3.45 V available on most connectors 1.2 The ...

Page 9

RabbitFLEX Tool Kit The RabbitFLEX Tool Kit contains the software and the extra hardware needed to develop your applica- tion. This section lists the tool kit items. Tool Kit Items • RabbitFLEX BL300F Getting Started Instructions. • Programming cable, ...

Page 10

Immunity The RabbitFlex series of single-board computers meets the following EN55024/1998 immunity standards. • EN61000-4-3 (Radiated Immunity) • EN61000-4-4 (EFT) • EN61000-4-6 (Conducted Immunity) Additional shielding or filtering may be required for a heavy industrial environment. 1.4.2 Emissions The ...

Page 11

Interfacing RabbitFlex to Other Devices Since the RabbitFlex series of single-board computers is designed to be connected to other devices, good EMI reduction practices should be followed to ensure compliance. CE compliance is ultimately the responsibility of the integrator. ...

Page 12

RabbitFLEX BL300F Introduction ...

Page 13

The information in this chapter will get you up and running. Follow the instructions given here to install, connect and verify the software and hardware components. 2.1 Hardware Preparation This section physically prepares the RabbitFLEX board for use in developing ...

Page 14

Hardware Connections There are two steps to readying the RabbitFLEX BL300F for use with Dynamic C: 1. Connect the programming cable between the RabbitFLEX BL300F and the host PC where you will install Dynamic C. 2. Connect the power ...

Page 15

Connect Power locking plug of the Connect the Figure 2.2. When the other end of the AC adapter is plugged into a power source, a small red LED labeled DS1 on the RabbitFLEX board (located in the corner by ...

Page 16

Verify Serial Connections Run the sample program pong.c to verify that everything is installed and connected properly. There are three ways to open a program from within Dynamic C: the File menu, the File icon or the keyboard short- ...

Page 17

Ethernet Communication This section describes the additional hardware connections needed to use the RabbitFLEX BL300F Ether- net port. An Ethernet port is available on the PowerCore 3800, but not on the PowerCore 3810. You must have a core module ...

Page 18

Direct Connection A direct connection means that a crossover cable connects the target board to the host computer running Dynamic C. Plug one end of the crossover cable into the RJ-45 jack on the core module and the other ...

Page 19

Verify the Ethernet Connection Run the sample program ping.c to verify that everything is connected properly. The sample program ping the \Samples\tcpip folder where you installed Dynamic C. Press function key F9 to compile and run the ...

Page 20

Figure 2.6 Test Points for Checking Voltage Levels on the PowerCore 3800 Table 2-6. Description for Test Points in Test Points These pins are the center- tapped power supply input. “B” is ground. Both “A” and “C” ...

Page 21

Problems During and/or at the End of Compilation • A few computers have trouble handling the default 115,200 baud rate. Change the stop bits from the Communications tab of Project Options. If that does not work, ...

Page 22

Getting Started ...

Page 23

D This chapter discusses the implementation of the RabbitFLEX™ SBC features. We start with information about the basic bare board, which is used as the foundation for all RabbitFLEX™ SBC boards. This foun- dation board is called the base ...

Page 24

Board-Specific Information The PowerCore module and the board to which it is attached are linked by more than their physical con- nection. Switching the mated core module is not recommended, as the calibration and design numbers are contained in ...

Page 25

One-Transistor Cells shows the complete layout of a one-transistor cell. A one-transistor cell can handle dig- Figure 3.2 ital inputs, certain outputs, bidirectional logic and keypads. The one-transistor cells on connector J4 can also be used as analog inputs. ...

Page 26

Board Map The board map shown in Figure 3.4 labeled “Jx PIN y” starts as an unconfigured cell before a circuit is selected and placed on it, causing it to become a configured cell. Figure 3.4 Map of Cells ...

Page 27

Figure 3.5 shows the locations of the digital and analog interface cells corresponding to connectors J1–J5. Figure 3.5 Map of Digital and Analog Input Interface Cells RabbitFLEX User’s Manual www.rabbit.com 21 ...

Page 28

Design Implementation and Information ...

Page 29

R This chapter discusses the options available for customizing a RabbitFLEX BL300F. The options fall into one of three main categories: global, pin group or connector. Global Options Global options, as the name implies, have a more global effect ...

Page 30

Overview of Connector and Cell Association The table in this section summarizes the user-configurable connectors, their corresponding unconfigured cells and the available circuitry that can be used to configure the cells. (See tion about cells.) Table 4-1. Connectors and ...

Page 31

Connector 1 Connectors J1 through J5 all have digital I/O, power routing, ground and +K (external power) options. But the range of choices is greater in the digital I/O options for J1 through J3 because the pins are connected ...

Page 32

Connector 3 and 4 The pinout diagram for J4 looks exactly like the one for J3. The difference is that J4 is made up of one- transistor cells and J3 is made up of two-transistor cells. This difference means ...

Page 33

Connector 6 J6 differs from J1-J5, in that its pins can only be customized from the global options page of the Rabbit- FLEX Configurator. This is because J6 is used for serial communications and the speaker. 4.2.2 Connector Mating ...

Page 34

RabbitFLEX BL300F Option Specifications This section lists all of the RabbitFLEX BL300F options, along with basic information and specifications. 4.3.1 Core Module There are currently two core modules available for the RabbitFLEX BL300F: the PowerCore 3800 and PowerCore 3810. ...

Page 35

RS-232 You can select one of the following RS-232 channel configurations: • one 3-wire channel, or • two 3-wire channels, or • one 5-wire channel Serial port F is used for the first 3-wire channel. If you select two ...

Page 36

RS-485 You can select an RS-485 communications channel with or without termination or jumpered termination for the most flexibility. The header J8, between J6 and the RS-485/RabbitNet port, is the header for RS- 485 jumpered termination. J8 pin numbers ...

Page 37

RabbitNet RabbitNet is a high-speed synchronous protocol used to connect peripheral cards to a master and to allow them to communicate with each other. The available peripheral cards are: • Digital I/O • ADC • DAC • Display/Keypad Interface ...

Page 38

Keypad Inputs The RabbitFLEX Configurator will automatically assign pins from connector J5 as the keypad inputs and outputs. Keypad inputs and outputs are digital I/O circuits. Keypad inputs are read by the API function flexKeyProcess(). This function must be ...

Page 39

Keypad Outputs The RabbitFLEX Configurator will automatically assign pins from connector J5 as the keypad inputs and outputs. Keypad inputs and outputs are digital I/O circuits. See sample program Samples/RabbitFLEX_BL300F/keypad.c for an example of how to use the keypad ...

Page 40

External Interrupt The external interrupt can be configured to use J1, pin 7 on the RabbitFLEX BL300F. The external inter- rupt is enabled using the Rabbit’s parallel port E, pin 0 (PE0), which is associated with interrupt vector 0, ...

Page 41

The direct output has the advantage of being a push/pull driver. It has the same current capacity as a gen- eral output on the Rabbit: 6.8 mA, sinking or sourcing. A direct PWM output could be used as a control ...

Page 42

Table 4-8. Digital Input 1.4 V Threshold Characteristics Symbol Parameter V Working Input Voltage IW V Maximum Input Voltage IM V High Level Input Voltage IH V Low Level Input Voltage IL V Trigger Threshold Voltage T I High Level ...

Page 43

Digital Input 2.8 V Threshold This section presents the circuit schematic and the characteristics for the 2.8 V threshold digital input. Figure 4-12 Digital Input 2.8 V Threshold Circuit Table 4-9. Digital Input 2.8 V Threshold Characteristics Symbol Parameter ...

Page 44

Digital Input 4.4 V Threshold This section presents the circuit schematic and the characteristics for the 4.4 V threshold digital input. Figure 4-13 Digital Input 4.4 V Threshold Circuit Table 4-10. Digital Input 4.4 V Threshold Characteristics Symbol Parameter ...

Page 45

Contact Input This section presents the circuit schematic and the characteristics for the contact input. A contact input is designed to be connected to a switch. It has a longer time constant than the other digital inputs to quiet ...

Page 46

Bidirectional Logic This section presents the circuit schematic and the characteristics for the bidirectional logic. A birdirec- tional logic circuit is useful when talking to an offboard device that communicates using the same line for transmit and receive, such ...

Page 47

Table 4-12. Bidirectional Logic Characteristics Symbol Parameter V Working Input Voltage IW V Maximum Input Voltage IM V High Level Input Voltage IH V Low Level Input Voltage IL V Trigger Threshold Voltage T I High Level Input Current IH ...

Page 48

Digital Outputs There are several digital output options on a RabbitFLEX BL300F.They are listed in not all options are available on all five connectors. Table 4-13. Digital Output Specifications RabbitFLEX BL300F Option Sinking Driver Sinking Driver, 100 ...

Page 49

Sinking Driver 1 A This section presents the circuit schematic and the characteristics for the 1 A sinking driver. See Section 5.4.3 for more information on protection diodes. Figure 4-16 Sinking Driver 1 A Circuit Schematic Power On/Reset State: ...

Page 50

Sinking Driver 100 mA This section presents the circuit schematic and the characteristics for the 100 mA sinking driver. The 100 mA sinking driver does not have the protection diodes that are in the 1 A circuit. Figure 4-17 ...

Page 51

Sourcing Driver 400 mA This section presents the circuit schematic and the characteristics for the 400 mA sourcing driver. Note that it has diode protection. This driver sources from the user-supplied +K pin and can handle ...

Page 52

Sourcing Driver 50 mA This section presents the circuit schematic and the characteristics for the 50 mA sourcing driver. Note that it has diode protection. This sourcing driver is short circuit current limited to about 65 mA, making it ...

Page 53

Line Driver, 100 , 5 V This section presents the circuit schematic and the characteristics for the line driver. Line drivers are avail- able on J1 through J5, pins 1 through 8. Figure 4-20 Line Driver 100 Power On/Reset ...

Page 54

Digital-to-Analog Converters The RabbitFLEX BL300F can have up to two DAC channels. The analog output from channel #0 comes out on J2, pin 7or can be used to drive the optional speaker output (See channel #1 comes out on ...

Page 55

DAC 0-3 V This section presents the circuit schematic and the characteristics for the 0-3 V DAC. Figure 4-21 DAC 0-3 V Circuit Schematic W W Table 4-19. DAC 0-3 V Characteristics Symbol Parameter V Supply Voltage S V ...

Page 56

DAC 0-10 V This section presents the circuit schematic and the characteristics for the 0-10 V DAC Symbol Parameter V Supply Voltage S V Full Scale Output Range FS I Maximum Output Current OM RES Resolution LIN ...

Page 57

Speaker DAC channel #0 can be configured as an input to a speaker. A pulse width modulated (PWM) signal goes through a low-pass filter, changing the high speed digital signal from the Rabbit processor into a smoothly varying analog ...

Page 58

Analog-to-Digital Converters The RabbitFLEX BL300F has a ramp-compare ADC channels are available. The analog inputs can be on any combination of pins 1 through 8 on both J3 and J4. The design of the ADCs allow ...

Page 59

Analog Input 0-3 V This section presents the circuit schematic and the characteristics for the 0-3 V analog input. Figure 4-25 Analog Input 0-3 V Threshold Circuit Table 4-21. ADC 0-3 V Characteristics RabbitFLEX User’s Manual W www.rabbit.com 53 ...

Page 60

Analog Input 0-10 V This section presents the circuit schematic and the characteristics for the 0-10 V analog input. Figure 4-26 Analog Input 0-10 V Circuit Schematic Table 4-22. ADC 0-10 V Characteristics www.rabbit.com RabbitFLEX ...

Page 61

Analog Input 4-20 mA This section presents the circuit schematic and the characteristics for the 4-20 mA analog input. This analog input provides a simple interface for industry standard 4-20 mA devices passive input and the ...

Page 62

Power Routing You can bring power supply pins out on any of the pin-configurable connectors (J1-J5). All five connec- tors accommodate 5 V pins, but only J1-J3 have 3.45 V. Keep in mind that no matter how many power ...

Page 63

R This chapter provides links, references and additional information about the RabbitFLEX BL300F options. All Rabbit documentation can be accessed online at the RabbitFLEX Tool Kit. 5.1 PowerCore Module Options For more information on the core module options, see the ...

Page 64

Serial Communication Dynamic C provides drivers for RS-232 and RS-485. For a full discussion of these drivers, see the Techni- cal Note, TN213: “Rabbit Serial Port Software.” 5.2.1 Comparison of RS-232 and RS-485 Both RS-232 and RS-485 are popular ...

Page 65

Digital Outputs There are several types of options available for digital outputs. There are sinking and sourcing drivers, as well as line drivers. No matter which digital output type you have, the circuit is activated by a call to ...

Page 66

Figure 5.2 Water Tower Analogy of Sinking and Sourcing Power 5.4.2 Line Drivers Line drivers are used to increase current, thereby enhancing transmission reliability. 5.4.3 Protection Diodes A protection diode gives a path for high voltages to follow when driving ...

Page 67

DACs To produce an analog signal for the DAC channel outputs, the Rabbit generates precisely timed pulses using PWM (pulse width modulation). The digital signal, which is either train of pulses. This ...

Page 68

Speaker DAC Channel #0 can be configured as an input to a speaker. The audio hardware on the RabbitFLEX board has two sections, the filter and the amplifier. The first part, the filter, converts the high speed digital pulses ...

Page 69

The sampling precision is the number of gradations possible for each sample point. Each time a sample is taken, the sampling precision determines the digital value that is assigned. For example, if the precision is 10 the software can assign ...

Page 70

More Information on RabbitFLEX BL300F ...

Page 71

A Programming your customized RabbitFlex board has been made both adaptable and as simple as possible. The complexity of dealing with multiple hardware configurations has been hidden in the use of data struc- tures in the Flex libraries. A ...

Page 72

Table 6-1. RabbitFLEX BL300F Sample Programs Program Name digout_groups.c keypad.c lcd.c master.c parity.c RabbitFLEX_BL300F_Board_ Options.c (a.k.a., RabbitFLEX_SBC40_Board_ Options.c) serial_number.c simple3wire.c simple5wire.c sflash_pattern_inspect.c sflash_test.c slave.c 66 Description Demonstrates software grouping capability. Displays all digital outputs, then prompts for which inputs to ...

Page 73

Table 6-1. RabbitFLEX BL300F Sample Programs Program Name speaker_audio.c speaker_tone.c thermistor.c thermOffset.c 6.2 RabbitFLEX BL300F Files There are two files that you must download from the RabbitFLEX Configurator after you have ordered a board. One is a library file that ...

Page 74

The .xml file is more important used when you want to reorder a particu- lar design. A board design cannot be ordered without its .xml file. Although your design file may still be available through your ...

Page 75

If you would like to change your pin software names after you have designed your board, then it is possi- ble to modify your design-specific generated library. You must search the library for all references to the name that you ...

Page 76

Some automatically generated pin groups are created in your design-specific library. These groups are listed below: Pin Group _flex_pins_digin[] _flex_pins_digout[] _flex_pins_diginout[] _flex_pins_anain[] _flex_pins_anaout[] Some of these groups are used in sample programs to make them operate on any given RabbitFLEX ...

Page 77

Note that the keypad’s software name is always flex_keypad. Next, you should configure the keys on your keypad. This is what the flexKeyConfig() function does. When a key is pressed, the flexKeyGet() function will get a specific key code before ...

Page 78

Number of rows on the display my_lcd.num_rows = 2; // Starting address of each row ( rows) my_lcd.row_addresses[0] = 0x80; my_lcd.row_addresses[1] = 0xc0; // Minimum duty cycle for contrast control my_lcd.pwm_contrast_min = 0; // Maximum duty cycle ...

Page 79

Software Walk-Through In this section, we will begin with the speaker_tone.c sample program and modify it to demonstrate more RabbitFLEX functionality. Note that to make the modifications and run the sample program, you will need the speaker option, appropriate ...

Page 80

Activate the tone system flexToneActivate(); This function simply activiates the tone driver. Once enabled, it consumes about 10-20% of the system’s processor time while running. Therefore real program, you might want to activate and shutdown (using flexToneShutdown()) ...

Page 81

Each of the changes that are shown below are made to the main() function of speaker_tone.c. Flex_IOPin *switch_pressed; Flex_IOPin *led; int switchnum; First of all, at the top of main(), we need to add a few variables. The variable *switch_pressed ...

Page 82

The rest of this section will detail the main changes that have been made to this program. In fact, you should delete the entire main while loop in speaker_tone.c, since we will be replacing it. For conve- nience, here is ...

Page 83

Wait for the switch to be released waitfor(flexDigIn(switch_pressed) == 0); // Wait additional 200 ms waitfor(DelayMs(200)); // If the switch is still released, then break out of the while loop if (flexDigIn(switch_pressed ...

Page 84

Similarly, we check each of the other ...

Page 85

Since we have accepted the switch press and turned on the corresponding LED, then we might as well play the tone. We use the switchnum variable that we saved earlier to choose the tone to play. while ( ...

Page 86

Flex_IOPin *leds &flex_digout32, &flex_digout34, &flex_digout36, &flex_digout38, FLEX_GROUP_END }; To use I/O groups, we must first create the groups. The switches[] and leds[] arrays contain point- ers to each of the Flex_IOPin structures for the switches and ...

Page 87

Next is the main while loop. The entire while loop will be replaced, so here is the code listing for con- venience: while (1) { costate { // Check if a switch has been pressed do { flexDigInGroup16(switches, &switch_values); } ...

Page 88

We will now go through each part of this new while loop in detail: while (1) { costate { // Check if a switch has been pressed do { flexDigInGroup16(switches, &switch_values); } while (switch_values == 0x00); Like before, we use ...

Page 89

Note that as we iterate through the loop, we keep track of the switch, LED, and switch number that we are on. Incrementing the switch_pressed and led pointers will make them point to the next member in the respective group. ...

Page 90

API Functions This section describes the programming interface for the RabbitFLEX BL300F. tions by category. Each function name is a link to the function’s full description. Function Category Board Initialization brdInit Pin Names flexPinName flexDigIn Digital Inputs flexDigOutGroup16 flexDigOut ...

Page 91

Board Initialization void brdInit(void); DESCRIPTION Call this function at the beginning of your application to initialize the controller's I/O ports. This function sets up all of the I/O available on your RabbitFLEX board, including Ethernet, digital I/O, and analog ...

Page 92

Digital Inputs int flexDigIn(Flex_IOPin *pin); DESCRIPTION Reads the state of a digital input channel. This function is non-reentrant. PARAMETER Pointer to the information structure for the selected I/O pin. pin RETURN VALUE 0: logic low 1: logic high <0: ...

Page 93

DESCRIPTION This function reads the state of a set of digital input channels into the result parameter. The first parameter must be an array of pointers to Flex_IOPin structures. Essentially, this is an array ...

Page 94

Digital Outputs int flexDigOut(Flex_IOPin *pin, int state); DESCRIPTION Sets the state of a digital output channel and is non-reentrant. Note that this function takes into account any inversion by the circuit on the given pin so that the called ...

Page 95

DESCRIPTION Reads the shadow (last value) of the given digital output channel. PARAMETER Pointer to the information structure for the selected I/O pin. pin RETURN VALUE 0: value of the shadow 0xFF: no shadow value (digital channel ...

Page 96

DESCRIPTION This function sets the state of a set of digital output channels based on the values parameter. The first parameter must be an array of pointers to Flex_IOPin structures. Essentially, this is an ...

Page 97

Analog Inputs int flexAnaInCalib(Flex_IOPin *pin, int value1, float volts1, int value2, float volts2); DESCRIPTION Calibrates the response of the selected A/D converter channel as a linear function using the two conversion points provided. Gain and offset constants are calculated ...

Page 98

Flex_IOPin *pin ); DESCRIPTION Reads the state of the external analog channel. Note that this is a raw value that has not been con- verted to a voltage. The raw values are useful for calibration. Also note that ...

Page 99

DESCRIPTION Reads the state of the external analog input channel and uses the previously set calibration con- stants to convert it to volts. This function is non-reentrant. Also note that the value retrieved here is not read ...

Page 100

DESCRIPTION Reads the state of the external analog input channel and uses the previously set calibration con- stants to convert it to milliamps. This function is non-reentrant. Also note that the value retrieved here is not read ...

Page 101

DESCRIPTION Sets the averaging alpha value (weight value) for a given ADC channel to read averaged ADC data. To read the average ADC data use the following functions: • flexAnaInAverage() - read averaged raw ...

Page 102

DESCRIPTION This function is like flexAnaIn(), except that it reports the most recent discount averaged val- ue instead of the raw value. To set the discount average alpha value, execute the flexAnaInAverageSetting() func- tion before calling this ...

Page 103

DESCRIPTION This function is like flexAnaInVolts(), except that it reports the most recent discount av- eraged voltage value instead of the raw voltage value. To set the discount average alpha value, execute flexAnaInAverageSetting() before calling this ...

Page 104

DESCRIPTION This function is like flexAnaInmAmps(), except that it reports the most recent discount av- eraged current reading instead of the raw current reading. To set the discount average alpha value, execute flexAnaInAverageSetting() before calling this function. ...

Page 105

DESCRIPTION Reports whether an updated value is available for the given analog input pin. If the clear pa- rameter is 1, then a call to this function will clear the result that a new value ...

Page 106

Analog Outputs int flexAnaOutCalib(Flex_IOPin *pin, int value1, float volts1, int value2, float volts2); DESCRIPTION Calibrates the response of the selected D/A converter channel as a linear function using the two conversion points provided. Gain and offset constants are calculated ...

Page 107

DESCRIPTION Sets the voltage on a given analog output pin and a raw value. This function is particularly useful for calibration. This function is non-reentrant. PARAMETERS Pointer to the information structure for the selected analog ...

Page 108

DESCRIPTION Sets the voltage on a given analog output pin by using the previously set calibration constants to calculate the correct data values. This function is non-reentrant. PARAMETERS Pointer to the information structure for the ...

Page 109

LCD int flexDispInit(Flex_LCD *lcd, Flex_LCDConf *user_conf); DESCRIPTION Initializes the given LCD, optionally using the given user configuration structure. This function defaults the cursor to off, the backlight to off, and the contrast control to the display's default value. PARAMETERS ...

Page 110

DESCRIPTION Sets the cursor type to be on, off, or blink. PARAMETERS Pointer to an LCD data structure. lcd One of the following cursor macros: style DISP_CUROFF DISP_CURON DISP_CURBLINK RETURN VALUE None. SEE ALSO ...

Page 111

DESCRIPTION Places the cursor at the given column and row. PARAMETERS Pointer to an LCD data structure. lcd Column position from top left corner. col Row position from top left corner. ...

Page 112

DESCRIPTION Gets the current cursor position based on the column and row parameters. PARAMETERS Pointer to an LCD data structure. lcd Pointer to an unsigned int (used to store column position). ...

Page 113

DESCRIPTION Gets the number of columns and rows for the given display. PARAMETERS Pointer to an LCD data structure. lcd Pointer to an unsigned int (used to store number of ...

Page 114

DESCRIPTION Clears the display and returns the cursor to the home position. PARAMETER Pointer to an LCD data structure. lcd RETURN VALUE None. SEE ALSO flexDispInit flexDispCursor , flexDispPrintf , flexDispContrast 108 flexDispClear flexDispGoto , flexDispOnoff flexDispBacklight ...

Page 115

DESCRIPTION Puts the given character on the display at the current cursor position. PARAMETERS Pointer to an LCD data structure. lcd The character to write to the display. ch RETURN VALUE None. SEE ALSO flexDispInit ...

Page 116

DESCRIPTION Prints the formatted string to the display starting at the current cursor position. The format speci- fier and additional parameters are specified just like in printf(). PARAMETERS Pointer to an LCD data structure. ...

Page 117

DESCRIPTION Turns the display on or off. PARAMETERS Pointer to an LCD data structure. lcd 1 = turn the display on, onOff 0 = turn the display off. RETURN VALUE None. SEE ALSO flexDispInit flexDispCursor ...

Page 118

DESCRIPTION Turns the display's backlight on or off. PARAMETERS Pointer to an LCD data structure. lcd 1 = turn the backlight on, onOff 0 = turn the backlight off. RETURN VALUE 0: success -1: error ...

Page 119

DESCRIPTION Sets the contrast for the display. The vcontrast value range is from 0–255, and is scaled to a contrast-control voltage. PARAMETERS Pointer to an LCD data structure. lcd Contrast setting (0–255) that is scaled ...

Page 120

DESCRIPTION Returns the current contrast setting (0–255). PARAMETER Pointer to an LCD data structure. lcd RETURN VALUE The current contrast setting (0–255). SEE ALSO flexDispContrast 114 flexDispGetContrast flexDispGetDimensions , www.rabbit.com flexDispGetPosition , Applications Programming ...

Page 121

Keypad void flexKeyProcess(Flex_Keypad *keypad); DESCRIPTION For the given keypad, this function scans and processes keypad data for keypresses. It also handles debouncing, releases, and repeats. PARAMETER Pointer to the keypad to process. keypad RETURN VALUE None. SEE ALSO flexKeyInit ...

Page 122

DESCRIPTION Assigns each key with key press and release codes, hold and repeat ticks for auto repeat, and de- bouncing for a specific ...

Page 123

DESCRIPTION Pushes the key press (cKey) on the specified keypad back onto the top of the input queue. PARAMETERS Pointer to the keypad to use. keypad Key code to put back onto the top of ...

Page 124

DESCRIPTION Gets the next key press for the selected kepad from the keypad input queue. PARAMETER Pointer to the keypad to use. keypad RETURN VALUE >0: next key press 0: no key presses available SEE ALSO flexKeyInit ...

Page 125

Speaker int flexSpeakerPWM(Flex_IOPin *pin); DESCRIPTION Selects the PWM channel to be used for the audio and tone speaker drivers. PARAMETER Pointer to the PWM pin to use for the speaker. pin RETURN VALUE 0: success -1: error (not a ...

Page 126

DESCRIPTION Loads tone samples to be played into the tone driver buffer. This sample will be played repeatedly for the specified number of repeats. If the number of repeats is negative, the clip ...

Page 127

DESCRIPTION Turns off the tone driver. Useful to preserve processor resources. RETURN VALUE None. SEE ALSO flexSpeakerPWM flexToneActivate , unsigned int flexAudioActivate(); DESCRIPTION Enables the audio driver so that samples can be loaded and played. The audio driver ...

Page 128

DESCRIPTION Plays samples that have been loaded into the driver buffer, see flexAudioLoad(). The driver will continue to play samples until its buffer is empty. RETURN VALUE None. SEE ALSO flexSpeakerPWM , flexAudioStop flexAudioPlaying , flexAudioLoad int flexAudioPlaying(); ...

Page 129

DESCRIPTION Tells the driver to treat the incoming data as audio sampled at this given rate. This tells the driver how fast the data should be played through. PARAMETER Sampling rate of the input data (1–65,535 ...

Page 130

DESCRIPTION Loads audio samples to be played into the audio driver buffer. These samples will not actually play unless flexAudioPlay() is called. You only need to call flexAudioPlay() once when starting. Data in subsequent calls ...

Page 131

DESCRIPTION Turns off the audio driver. Useful to preserve processor resources. RETURN VALUE None. SEE ALSO flexSpeakerPWM flexAudioActivate , flexAudioStop flexAudioPlaying , flexAudioLoad void flexAudioStop(); DESCRIPTION Immediately stops any sound that is playing and empties the sample buffer. ...

Page 132

Serial Communication int serMode(int mode); DESCRIPTION Sets up user interface for the serial communication lines. This function must be called after exe- cuting serXOpen(). Whether you are opening one or multiple serial ports, this function must be executed after ...

Page 133

DESCRIPTION Enables the RS-485 transmitter. The brdInit() function must be executed before running this function. This function is non-reentrant. After the byte or block of data has been transmitted, the RS-485 transmitter must be idle and its transmit ...

Page 134

DESCRIPTION Disables the RS-485 transmitter. This puts you in a listen mode, which allows you to receive data from the RS-485 interface. The brdInit() function must be executed before running this func- tion. This function is non-reentrant. RETURN ...

Page 135

A PPENDIX This appendix provides the board specifications for the RabbitFLEX BL300F. A.1 Electrical and Mechanical Characteristics Figure A.1 shows the mechanical dimensions for the RabbitFLEX BL300F. Figure A.1 RabbitFLEX BL300F Dimensions NOTE: All measurements are in inches followed by ...

Page 136

Rabbit recommends an exclusion zone of 0.25" (6 mm) around the RabbitFLEX BL300F board in all directions when the RabbitFLEX BL300F board is incorporated into an assembly that includes other com- ponents. Figure A.2 shows this exclusion zone. Figure A.2 ...

Page 137

Table A-1 lists the electrical, mechanical, and environmental specifications for the RabbitFLEX BL300F. Table A-1. RabbitFLEX BL300F Specifications Parameter Microprocessor Rabbit 3000 EMI Reduction Spectrum spreader for reduced EMI (ElectroMagnetic Interference) Ethernet Port SRAM Flash Memory (program) Serial Flash Memory ...

Page 138

Table A-1. RabbitFLEX BL300F Specifications (Continued) Parameter Unregulated 8- (draws 13.3 W) Unregulated 8- (draws 6 24– with center-tapped Input Power transformer (draws 13.3 W) Options 12- with untapped standard ...

Page 139

This appendix provides information for the power supplies on the PowerCore modules used on the Rabbit- FLEX BL300F board. Information on the reset generator used in power management is also included. B.1 Power Supplies The PowerCore module has a 6-pin ...

Page 140

B.2 Battery-Backup Circuits The data SRAM and the real-time clock on the PowerCore module have battery backup. Power to the SRAM and the real-time clock (VRAM) is provided by two different sources, depending on whether the PowerCore module is powered ...

Page 141

B.4 Power On / Reset State The table below shows the circuits that are affected by power on or reset. Circuit Bidirectional Logic Lines Keypad Outputs Sinking Drivers Sinking Drivers, 100 Sourcing Drivers, ...

Page 142

136 www.rabbit.com ...

Page 143

A PPENDIX The demonstration board allows you to exercise the digital I RabbitFLEX board. The demonstra- tion board, shown in Figure C.1, has four connections for digital inputs that create logic highs while the corresponding pushbutton switches on ...

Page 144

C.1.2 Digital Input Connections To run the digital input sample programs, you must connect at least one demo board switch to a digital input on the RabbitFLEX board. There are four demo board switches, so you may connect up to ...

Page 145

C.1.3 Digital Output Connections To run the digital output sample programs, you must connect at least one demo board LED to a 100 mA sinking driver on the RabbitFLEX board. There are four demo board LEDs, so you may connect ...

Page 146

C.1.4 Run Sample Programs Make sure the programming cable and transformer are connected as described in Started.” Now you can run your application or a sample program. To exercise digital inputs, you can run either digin_simple.c or digin_groups.c. To exercise ...

Page 147

... If you want to label the keypad keys, a piece of paper can be inserted between the two layers of the key- pad. RabbitFLEX User’s Manual FLEX K ABBIT EYPAD Quantity Supplier 1 Rabbit 1 Rabbit 1 Rabbit 1 Rabbit 2 Rabbit www.rabbit.com /D K ISPLAY IT Part Number 535-0026 202-0051 505-0027 498-0013 151-0153 Figure D.1. Slide the 141 ...

Page 148

Figure D.1 Connect Keypad to Keypad Connector J5 142 www.rabbit.com ...

Page 149

D.3 2 × 6 Keypad Datasheet RabbitFLEX User’s Manual www.rabbit.com 143 ...

Page 150

D.4 LCD Module The LCD supplied with the RabbitFLEX Keypad/Display Kit does not have any connectors attached. Use two cable assemblies from the RabbitFLEX BL300F Tool Kit to connect the LCD display to connectors J1 and J2 on the RabbitFLEX ...

Page 151

D.5 4 × 20 Character LCD Datasheet RabbitFLEX User’s Manual www.rabbit.com 145 ...

Page 152

146 www.rabbit.com ...

Page 153

RabbitFLEX User’s Manual www.rabbit.com 147 ...

Page 154

148 www.rabbit.com ...

Page 155

Item Input Voltage (high) Input Voltage (low) Recommended LCD Driving Voltage (Standard Vdd - Vo Temp.) Recommended LCD Driving Voltage (Wide Vdd - Vo Temp.) Power Supply Current LED Backlight Voltage LED Backlight Current RabbitFLEX User’s Manual Electrical Characteristics Symbol ...

Page 156

150 www.rabbit.com ...

Page 157

... This page consists of links to the schematics of interest to an engineer using the RabbitFLEX BL300F. 090-0219 RabbitFLEX BL300F General Schematic www.rabbit.com/documentation/schemat/090-0219.pdf 090-0193 PowerCore 3800 Module Schematic www.rabbit.com/documentation/schemat/090-0193.pdf 090-0193 PowerCore 3810 Module Schematic www.rabbit.com/documentation/schemat/090-0193.pdf 090-0042 Demonstration Board Schematic www.rabbit.com/documentation/schemat/090-0042.pdf 090-0128 Programming Cable Schematic www.rabbit.com/documentation/schemat/090-0128.pdf RabbitFLEX User’s Manual S CHEMATICS www.rabbit.com 151 ...

Page 158

152 www.rabbit.com ...

Page 159

A ADCs ...................................................................... 52 amplifier ............................................................ 51, 62 analog input flexAnaIn() .......................................................... 92 flexAnaInAverage() ............................................ 96 flexAnaInAverageSetting() ................................. 95 flexAnaInCalib() ................................................. 91 flexAnaInmAmps() ............................................. 94 flexAnaInmAmpsAverage() ............................... 98 flexAnaInNewValue() ........................................ 99 flexAnaInVolts() ................................................. 93 flexAnaInVoltsAverage() ................................... 97 analog output flexAnaOut() ...

Page 160

L LCD .........................................................................31 flexDispBacklight() ...........................................112 flexDispClear() ..................................................108 flexDispContrast() .............................................113 flexDispCursor() ................................................104 flexDispGetContrast() .......................................114 flexDispGetDimensions() ..................................107 flexDispGetPosition() ........................................106 flexDispGoto() ..................................................105 flexDispInit() .....................................................103 flexDispOnoff() .................................................111 flexDispPrintf() .................................................110 flexDispPutc() ...

Page 161

U USB .................................................................... 8, 13 User block ............................................................... 18 W WAV files ............................................................... 51 website ...................................................................... 2 RabbitFLEX User’s Manual www.rabbit.com 155 ...

Page 162

156 www.rabbit.com ...

Related keywords