![]() |
| Coyote (BL2500) User's Manual |
4. Software
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 programs related to the Coyote.
4.1 Running Dynamic C
You have a choice of doing your software development in the flash memory or in the static RAM included on the Coyote. The flash memory and SRAM options are selected with the Options > Project Options > Compiler menu.
The advantage of working in RAM is to save wear on the flash memory, which is limited to about 100,000 write cycles. The disadvantage is that the code and data might not both fit in RAM.
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 an image file for later loading. Dynamic C runs on PCs under Windows 95, 98, 2000, NT, Me, and XP. Programs can be downloaded at baud rates of up to 460,800 bps after the program compiles.
Dynamic C has a number of standard features:
- Full-feature source and/or assembly-level debugger, no in-circuit emulator required.
- Royalty-free TCP/IP stack with source code and most common protocols.
- Hundreds of functions in source-code libraries and sample programs:
- Powerful language extensions for cooperative or preemptive multitasking
- Loader utility program to load binary images into Rabbit targets in the absence of Dynamic C.
- Provision for customers to create their own source code libraries and augment on-line help by creating "function description" block comments using a special format for library functions.
- Standard debugging features:
- u Breakpoints--Set breakpoints that can disable interrupts.
- u Single-stepping--Step into or over functions at a source or machine code level, µC/OS-II aware.
- u Code disassembly--The disassembly window displays addresses, opcodes, mnemonics, and machine cycle times. Switch between debugging at machine-code level and source-code level by simply opening or closing the disassembly window.
- u Watch expressions--Watch expressions are compiled when defined, so complex expressions including function calls may be placed into watch expressions. Watch expressions can be updated with or without stopping program execution.
- u Register window--All processor registers and flags are displayed. The contents of general registers may be modified in the window by the user.
- u Stack window--shows the contents of the top of the stack.
- u Hex memory dump--displays the contents of memory at any address.
- u STDIO window--
printfoutputs to this window and keyboard input on the host PC can be detected for debugging purposes.printfoutput may also be sent to a serial port or file.4.1.1 Upgrading Dynamic C
4.1.1.1 Patches and Bug Fixes
Dynamic C patches that focus on bug fixes are available from time to time. Check the Web site at www.rabbit.com/support/ for the latest patches, workarounds, and bug fixes.
The default installation of a patch or bug fix is to install the file in a directory (folder) different from that of the original Dynamic C installation. Rabbit Semiconductor recommends 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, or if you have programs in the old directory (folder), make these same changes to the BIOS or libraries in the new directory containing the patch. Do not simply copy over an entire file since you may overwrite a bug fix. Once you are sure the new patch works entirely to your satisfaction, you may retire the existing installation, but keep it available to handle legacy applications.
4.1.1.2 Upgrades
Dynamic C installations are designed for use with the board they are included with, and are included at no charge as part of our low-cost kits. Dynamic C is a complete software development system, but does not include all the Dynamic C features. Rabbit Semiconductor also offers add-on Dynamic C modules containing the popular µC/OS-II real-time operating system, as well as PPP, Advanced Encryption Standard (AES), and other select libraries. In addition to the Web-based technical support included at no extra charge, a one-year telephone-based technical support module is also available for purchase.
4.1.2 Accessing and Downloading Dynamic C Libraries
The libraries needed to run the Coyote are available on the CD included with the Development Kit, or they may be downloaded from http://www.rabbit.com/support/downloads/ on Rabbit Semiconductor's Web site. You may need to download upgraded or additional libraries to run selected RabbitNet peripheral cards.
When downloading the libraries from the Web site, click on the product-specific links until you reach the links for the BL2500 download. Once you have downloaded the self-extracting ZIP file, the following instructions will help you to add the libraries and sample programs to your existing Dynamic C installation.
- Double-click on the file name of the self-extracting ZIP file.
- The extracting program will prompt you for a folder in which to place the files.
- Enter the drive letter and the name of the Dynamic C folder where the libraries and samples are to be added, for example,
C:\DCRabbit801.
- Click the UnZip button.
The files from the ZIP directory will then load automatically in your Dynamic C folder. Additional folders will be created as needed, and the
LIB.DIR,DEFAULT.H, andBOARDTYPES.LIBfiles will be overwritten with the information needed to use the Coyote.You will be able to use the revamped Dynamic C installation with the Coyote and you will continue to be able to use this installation with all the other Rabbit Semiconductor products you were able to use before.
4.2 Sample Programs
Sample programs are provided in the Dynamic C
SAMPLESfolder. The sample programPONG.Cdemonstrates the output to the STDIO window. The various directories in theSAMPLESfolder contain specific sample programs that illustrate the use of the corresponding Dynamic C libraries.The
SAMPLES\BL2500folder provides sample programs specific to the Coyote. Each sample program has comments that describe the purpose and function of the program. Follow the instructions at the beginning of the sample program.To run a sample program, open it with the File menu (if it is not still open), compile it using the Compile menu, and then run it by selecting Run in the Run menu. The Coyote must be in Program mode (see Section 3.6, "Serial Programming Cable") and must be connected to a PC using the programming cable as described in Section 2.2, "BL2500 Connections."
More complete information on Dynamic C is provided in the Dynamic C User's Manual.
4.2.1 General Coyote Operation
The following sample programs are found in the
SAMPLES\BL2500.
CONTROLLED.C--Uses the D/A converters to vary the brightness of the LEDs on the Demonstration Board.
FLASHLEDS.C--Uses cofunctions and costatements to flash LEDs on the Coyote at different intervals.
TOGGLESWITCH.C--Uses costatements to detect switches presses on the Demonstration Board with press and release debouncing. Corresponding LEDs will turn on or off.4.2.2 Digital I/O
The following sample programs are found in the
IOsubdirectory inSAMPLES\BL2500.
DIGIN.C--This program demonstrates the use of the digital inputs and the function calldigIn()using the Demonstration Board to see an input channel toggle from HIGH to LOW when pressing a pushbutton on the Demonstration Board.
DIGOUT.C--This program demonstrates the use of the digital outputs and the function calldigOut()using the Demonstration Board to see the logic levels of output channels in the STDIO window and the state of the corresponding LEDs on the Demonstration Board.4.2.3 Serial Communication
The following sample programs are found in the
SERIALsubdirectory inSAMPLES\BL2500.
FLOWCONTROL.C--Demonstrates hardware flow control by sending a pattern of * characters out of Serial Port E (PG6) at115,200 bps. One character at a time is received from PG6 and is displayed. In this example, PG3 is configured as the CTS input, detecting a clear to send condition, and PG2 is configured as the RTS output, signaling a ready condition. This demonstration can be performed with either one or two boards.
SIMPLE3WIRE.C--Demonstrates basic initialization for a simple RS-232 3-wire loopback displayed in the STDIO window.
SWITCHCHAR.C--This program transmits and then receives an ASCII string on Serial Ports E and F when a switch is pressed. It also displays the serial data received from both ports in the STDIO window.
SIMPLE485MASTER.C--This program demonstrates a simple RS-485 transmission of lower case letters to a slave. The slave will send back converted upper case letters back to the master Coyote and display them in the STDIO window. UseSIMPLESLAVE.Cto program the slave.
SIMPLE485SLAVE.C--This program demonstrates a simple RS-485 transmission of lower case letters to a master Coyote. The slave will send back converted upper case letters back to the master Coyote and display them in the STDIO window. UseSIMPLEMASTER.Cto program the master Coyote.4.2.4 A/D Converter Inputs
The following sample programs are found in the ADC subdirectory in SAMPLES\BL2500.
AD0.C--This program reads and displays the voltage on channel AD0 and its equivalent value to the STDIO window.
ADCCALIB.C--This program demonstrates how to recalibrate one single-ended A/D converter channel using two known voltages to generate constants that are then rewritten into the user block data area.
COF_ANAIN.C--This program demonstrates the use of the analog input driver as a cofunction. Connect DA1 to AD0 to provide an input voltage. When the program runs, it will read the input voltage ten times while another costate is executed concurrently. The values will be printed out at the end of the program.
DA2AD.C--This program allows the user to input a voltage in the Dynamic C STDIO window for DA1 to output. The user needs to connect DA1 to AD0. The program will display the voltage read in the STDIO window.4.2.5 D/A Converter Outputs
The following sample program is found in the
DACsubdirectory inSAMPLES\BL2500.
DAC.C--Demonstrates pulse-width modulation as an analog output voltage by displaying the voltage entered and measuring the voltage output.
DACCALIB.C--Demonstrates how to recalibrate one single-ended analog output channel using two known voltages to generate constants for that channel that are then rewritten into the user block data area.
PWM.C--Demonstrates pulse-width modulation as an analog output.4.2.6 Using System Information from the RabbitCore Module
Calibration constants for the A/D converter are stored in the simulated EEPROM area of the flash memory. You may find it useful to retrieve the calibration constants and save them for future use, for example, if you should need to replace the RabbitCore module on the Coyote.
The following sample programs, found in the
ADCsubdirectory inSAMPLES\BL2500\, illustrate how to save or retrieve the calibration constants. Note that both sample programs prompt you to use a serial number for the Coyote. This serial number can be any 5-digit number of your choice, and will be unique to a particular Coyote. Do not use the MAC address on the bar code label of the RabbitCore module attached to the Coyote since you may at some later time use that particular RabbitCore module on another Coyote, and the previously saved calibration data would no longer apply.
UPLOADCALIB.C--This program demonstrates reading calibration constants from a controller's user block in flash memory and transmitting the file using a serial port with a PC serial utility such as Tera Term.
NOTE Use the sample program DNLOADCALIB.Cto retrieve the data and rewrite it to the single-board computer.
DNLOADCALIB.C--This program demonstrates how to retrieve your analog calibration data to rewrite them back to simulated EEPROM in flash using a serial utility such as Tera Term.
NOTE Calibration data must be saved previously in a file by the sample program UPLOADCALIB.C.NOTE In addition to loading the calibration constants on the replacement RabbitCore module, you will also have to add the product information for the Coyote to the ID block associated with the RabbitCore module. The sample program WRITE_IDBLOCK.C, available on the Rabbit Semiconductor Web site at www.rabbit.com/support/feature_downloads.shtml, provides specific instructions and an example.4.2.7 Real-Time Clock
If you plan to use the real-time clock functionality in your application, you will need to set the real-time clock. Set the real-time clock using the
SETRTCKB.Csample program from the Dynamic CSAMPLES\RTCLOCKfolder, using the onscreen prompts. TheRTC_TEST.Csample program in the Dynamic CSAMPLES\RTCLOCKfolder provides additional examples of how to read and set the real-time clock.4.3 Coyote Libraries
With Dynamic C running, click File > Open, and select Lib. The following list of Dynamic C libraries and library directories will be displayed. Two library directories provide libraries of function calls that are used to develop applications for the Coyote.
BL2500--libraries associated with features specific to the Coyote. The functions in the BL25xx.LIBlibrary are described in Section 4.4, "Coyote Function Calls.".
RN_CFG_BL25.LIB--used to configure the BL2500 for use with RabbitNet peripheral cards.
TCPIP--libraries specific to using TCP/IP functions.Other generic functions applicable to all devices based on the Rabbit 3000 microprocessor are described in the Dynamic C Function Reference Manual.
4.4 Coyote Function Calls
4.4.1 Board Initialization
- Call this function at the beginning of your program. This function initializes Parallel Ports A through G for use with the Coyote. The ports are initialized according to Table A-3.
- Summary of initialization
- 1. RS-485 is not initialized.
- 2. RS-232 is not initialized.
- 3. Unused configurable I/O are either pulled-up inputs or outputs set high.
- 4. PWM for DA0 and DA1 set to 57,600 Hz, and output voltage is zero. Uses functions
pwm_init(),pwmOutConfig(), andpwmOut().- 5. Calibration constants for analog channels AD0, DA0, and DA1 are read from flash user block.
4.4.2 Digital I/O
void digOut(int channel, int value);
- Sets the state of digital outputs OUT0-OUT7, whereOUT0-OUT7 are sinking outputs.
- A run-time error will occur for the following conditions:
Parameters
- 1.
channelorvalueis out of range.- 2.
brdInitwas not called first.
channelis the digital output channels (0-7)Return Value
valueis the output value (0 or 1)SEE ALSO
- None.
digIn, digBankOut
void digBankOut(int bank, int value);
- Writes the state of a block of designated digital output channels. The bank consists of OUT0-OUT7. This call is faster than setting the individual channels, but does not output states simultaneously. States are written in succession from OUT7-OUT0.
- A run-time error will occur for the following conditions:
Parameters
- 1.
bankorvalueis out of range.- 2.
brdInitwas not called first.
bankis 0 for the bank of digital output channels (0-7)Return Value
valueis an 8-bit output value, where each bit corresponds to one channel. OUT0 is the least significant bit 0Example
- None.
- To send out odd channels high:
void digBankOut(0, 0xaa);See Also
digOut, digBankIn
- Reads the state of an input channel (IN00-IN15).
- A run-time error will occur for the following conditions:
PARAMETER
- 1.
channelout of range.- 2.
brdInitwas not executed before executingdigIn.RETURN VALUE
channelis the input channel number (0-15)SEE ALSO
- The logic state of the input (0 or 1).
digOut, digBankIn
- Reads the state of a block of designated digital input channels. One bank consists of IN0-IN07, and the other bank consists of IN08-IN15. This call is faster than reading the individual channels, but does not read the states simultaneously. States are read in succession from IN15-IN08 or from IN07-IN00.
- A run-time error will occur for the following conditions:
Parameter
- 1.
bankis out of range.- 2.
brdInitwas not called first.RETURN VALUE
bankis 0 for the bank of digital inputs IN00-IN07, 1 for the bank of digital inputs IN08-IN15Example
- An input value in the lower byte, where each bit corresponds to one channel. IN00 and IN08 are in the bit 0 place.
- To read inputs 8 to 15:
int digBankIn(1);SEE ALSO
digIn, digBankOut4.4.3 LEDs
void ledOut(int led, int value);
Parameters
- LED on/off control.
ledis the LED to controlReturn Value
- 0 = LED DS1
1 = LED DS2
2 = LED DS3
3 = LED DS4
valueis used to control whether the LED is on or off- 0 = OFF
1 = ON
- None.
4.4.4 Serial Communication
Library files included with Dynamic C provide a full range of serial communications support. The
RS232.LIBlibrary provides a set of circular-buffer-based serial functions. ThePACKET.LIBlibrary provides packet-based serial functions where packets can be delimited by the 9th bit, by transmission gaps, or with user-defined special characters. Both libraries provide blocking functions, which do not return until they are finished transmitting or receiving, and nonblocking functions, which must be called repeatedly until they are finished. For more information, see the Dynamic C Function Reference Manual and Technical Note 213, Rabbit 2000 Serial Port Software.Use the following function calls with the Coyote.
- Enables the RS485 transmitter. Transmitted data get echo'ed back into the receive data buffer. These echo'ed data could be used to know when to disable the transmitter by using one of the following methods:
Return Value
- Byte mode--disable the transmitter after the same byte that is transmitted is detected in the receive data buffer.
- Block data mode--disable the transmitter after the same number of bytes transmitted is detected in the receive data buffer.
SEE ALSO
- None.
ser485Rx, serXopenReturn Value
- Disables the RS-485 transmitter. This puts the Coyote in listen mode, which allows it to receive data from the RS-485 interface.
SEE ALSO
- None.
ser485Tx, serXopen4.4.5 Analog Inputs
unsigned int anaIn(unsigned int channel);
- Uses D/A converter channel DA0 to search through the full voltage range for a match to the input voltage on channel AD0. This is done using a 10-step successive-approximation binary search, which nominally takes 86 ms.
- Call
pwmOutConfig()andpwm_init()before using this function. An exception error will occur if these functions were not been called previously.Parameter
NOTE DA0 should not be used when AD0 is in use. Return Value
channelis 0 for channel AD0.
- An integer value between 0 and 1023 that corresponds to a voltage between 0.0 and 3.3 V on the analog input channel.
SEE ALSO
- -1 if the return value is out of range.
cof_anaIn, anaInVolts
- This function is the cofunction version of the analog input for analog input channel AD0. This version will "yield" on each step approximation in a costate, and will take 10 steps to complete the A/D conversion. The function will also process costates while waiting for each approximation to settle.
Parameters
NOTE All the restrictions for anaInapply tocof_anaIn.Return Value
channelis 0 for channel AD0
- An integer value between 0 and 1023 that corresponds to a voltage between 0.0 and 3.3 V on the analog input channel.
SEE ALSO
- -1 if the return value is out of range.
anaIn
float anaInVolts(unsigned int channel);
- Reads the voltage of a single-ended analog input channel using D/A channel DA0 for comparison to find a match to the input voltage on channel AD0. This is done using a 10-step successive-approximation binary search, which nominally takes 86 ms.
- Call
pwmOutConfig()andpwm_init()before using this function. An exception error will occur if these functions were not been called previously.Parameter
NOTE DA0 should not be used when AD0 is in use. Return Value
channelis 0 for channel AD0
- A voltage value between 0 and 3.1 V for the analog input channel.
SEE ALSO
ADOVERFLOWis returned (defined macro = -4096) on overflow or if the return value is out of range.
anaIn, pwmOutConfig, pwm_init
int anaInCalib(int channel, int value1, float volts1,int value2, float volts2);
- Calibrates the response of the A/D converter channel as a linear function using the two conversion points provided. Values are calculated and placed into global table
_adcCalibSfor analog inputs to be stored later into simulated EEPROM using the functionanaInEEWr().Parameters
- Each channel will have a linear constant and a voltage offset.
channelis 0 for channel AD0
value1is the first A/D converter value (0-1023), usually a value of 310 that corresponds to 1.0 V
volts1is the voltage corresponding to the first A/D converter value (0-3.3 V)
value2is the second A/D converter value (0-1023), usually a value of 930 that corresponds to 3.0 VReturn Value
volts2is the voltage corresponding to the second A/D converter value (0-3.3 V)
- 0 if successful
SEE ALSO
- -1 if not able to make calibration constants
anaIn, anaInEERd, anaInEEWr
int anaInEERd(unsigned int channel);
- Reads the calibration constants, gain, and offset for an input based on its designated channel code position into global table
_adcCalibS. The constants are stored in the top 1K of the reserved user block memory area. Use the sample programUSERBLOCKINFOR.CinSAMPLES\BL2500to get the addresses reserved for the calibration data constants and the addresses available for use by your application program.Parameters
NOTE This function cannot be run in RAM. Return Value
channelis 0 for channel AD0
- 0 if successful
SEE ALSO
- -1 if invalid address or range
anaInEEWr, anaInCalib
int anaInEEWr(unsigned int channel);
- Writes the calibration constants, gain, and offset for an input based on its designated channel code position from global table
_adcCalibS. The constants are stored in the top 1K of the reserved user block memory area. Use the sample programUSERBLOCKINFOR.CinSAMPLES\BL2500to get the addresses reserved for the calibration data constants and the addresses available for use by your application program.Parameter
NOTE This function cannot be run in RAM. Return Value
channelis 0 for channel AD0
- 0 if successful
SEE ALSO
- -1 if invalid address or range
anaInEERd, anaInCalib
4.4.6 Analog Outputs
unsigned long pwm_init(unsigned long frequency);
Parameter
- This function from the
R3000.LIBlibrary inLib\Rabbit3000sets the base frequency for the PWM pulses and enables the PWM driver on all four channels. The base frequency is the frequency without pulse spreading. Pulse spreading will increase the frequency by a factor of 4.Return Value
frequencyis the frequency (in Hz)
- Actual frequency set. This will be the closest possible match to the requested frequency.
void pwmOutConfig(unsigned int channel, int pwmoption);
- Option flags are used to enable features on an individual PWM channels. Use
pwm_init()to set the frequency.Parameters
- An exception error will occur if
brdInit()has not been called previously.
channelis the PWM output channel to set: 0 for DA0, 1 for DA1.
pwmoptionis used to set the PWM options as a combination of the following bit masks:Return Value
PWM_NORMAL--sets normal push-pull logic output.PWM_SPREAD--Set pulse spreading. The duty cycle is spread over four separate pulses to increase the pulse frequency. Use this option for A/D and D/A conversions.PWM_OPENDRAIN--sets the PWM output pin to be open-drain. This mask is usually not used.SEE ALSO
- None.
pwm_init, brdInit
int pwmOut(unsigned int channel, int rawdata);
- Sets a voltage (0 to Vdd) on an analog output channel given a data point on the 1024 clock count cycle.
Parameters
- Call
pwmOutConfig()andpwm_init()before using this function. (An exception error will occur if these functions were not been called previously.)
channelis the PWM output channel to write: 0 for DA0, 1 for DA1Return Value
rawdatais data value (0-1024) for a 1024 clock count cycle. The value may be calculated using the percent duty cycle value (percentage that is on or high) of the 1024 clock count cycle, for example, 0.25*1024.SEE ALSO
- 0 if successful
pwmOutConfig, pwm_init
void pwmOutVolts(unsigned int channel, int rawdata);
- Sets the voltage of an analog output channel by using the previously set calibration constants to calculate the correct data values.
Parameters
- Call
pwmOutConfig()andpwm_init()before using this function. (An exception error will occur if these functions were not been called previously.)
channelis the output channel 0 or 1 to write: 0 for DA0, 1 for DA1Return Value
voltageis the voltage desired on the output channel (0-3.3 V)See Also
- None.
pwmOut, pwmOutConfig, pwm_init
int anaOutCalib(int channel, int value1, float volts1,int value2, float volts2);
- Calibrates the response of the D/A converter channel as a linear function using the two conversion points provided. Values are calculated and placed into global table
_dacCalibSfor analog inputs to be stored later into simulated EEPROM using the functionanaOutEEWr().Parameters
- Each channel will have a linear constant and a voltage offset.
channelis the output channel 0 or 1: 0 for DA0, 1 for DA1
value1is the first D/A converter value (0-1023), usually a value of 310 that corresponds to 1.0 V
volts1is the voltage corresponding to the first D/A converter value (0-3.3 V or Vref)
value2is the second D/A converter value (0-1023), usually a value of 930 that corresponds to 3.0 VReturn Value
volts2is the voltage corresponding to the second D/A converter value (0-3.3 V or Vref)
- 0 if successful
SEE ALSO
- -1 if not able to make calibration constants
pwmOut, anaOutEERd, anaOutEEWr
int anaOutEERd(unsigned int channel);
- Reads the calibration constants, gain, and offset for an output based on its designated channel code position into global table
_adcCalibS. The constants are stored in the top 1K of the reserved user block memory area. Use the sample programUSERBLOCKINFOR.CinSAMPLES\BL2500to get the addresses reserved for the calibration data constants and the addresses available for use by your application program.Parameters
NOTE This function cannot be run in RAM. Return Value
channelis the output channel 0 or 1: 0 for DA0, 1 for DA1
- 0 if successful
SEE ALSO
- -1 if invalid address or range
anaOutEEWr, anaOutCalib
int anaOutEEWr(unsigned int channel);
- Writes the calibration constants, gain, and offset for an output based on its designated channel code position from global table
_adcCalibS. The constants are stored in the top 1K of the reserved user block memory area. Use the sample programUSERBLOCKINFOR.CinSAMPLES\BL2500to get the addresses reserved for the calibration data constants and the addresses available for use by your application program.Parameter
NOTE This function cannot be run in RAM. Return Value
channelis the output channel 0 or 1: 0 for DA0, 1 for DA1
- 0 if successful
SEE ALSO
- -1 if invalid address or range
anaOutEERd, anaOutCalib4.4.7 RabbitNet Port
The function calls described in this section are used to configure the BL2500 for use with RabbitNet peripheral cards. The user's manual for the specific peripheral card you are using contains additional function calls related to the RabbitNet protocol and the individual peripheral card.
Add the following lines at the start of your program.
#define RN_MAX_DEV 10 // max number of devices
#define RN_MAX_DATA 16 // max number of data bytes in any transaction
#define RN_MAX_PORT 2 // max number of serial portsSet the following bits in
RNSTATUSABORTto abort transmitting data after the status byte is returned. This does not affect the status byte and still can be interpreted. Set any bit combination to abort:
- bit 7--device busy is hard-coded into driver
bit 5--identifies router or slave
bits 4,3,2--peripheral-board-specific bits
bit 1--command rejected
bit 0--watchdog timeout
#define RNSTATUSABORT 0x80
// hard-coded driver default to abort if the peripheral card is busyReturn Value
- Provides
rn_init()with the serial port control information needed for BL2500 series controllers.
- None.
Parameters
- Deactivates the BL2500 RabbitNet port as a clocked serial port. This call is also used by
rn_init().Return Value
portnum= 0
- None
void rn_sp_enable(int portnum);
Parameters
- This is a macro that enables or asserts the BL2500 RabbitNet port select prior to data transfer.
Return Value
portnum= 0
- None
void rn_sp_disable(int portnum);
Parameters
- This is a macro that disables or deasserts the BL2500 RabbitNet port select to invalidate data transfer.
Return Value
portnum= 0
- None.
| Rabbit Semiconductor www.rabbit.com |