Home

Rabbit Semiconductor 101-0356 Datasheet

image

Contents

1. Time delav bv counting 0 A or J07 JE SOMOP JEA to 25 000 BitWrPortI PADR PADRShadow 0 2 cor 0 J lt t0007 322 7 NU Set bit 2 toa 0 turning LED DS3 on end while 1 Count to 1000 for a shorter time delay end of main End of the endless loop Note See Rabbit 2000 Microprocessor User s Manual Software Chapter for details on the routines that read and write I O ports Figure 7 Sample Program DEMOJR1 C To run the program DEMOJR1 C load it with the File gt Open menu then compile and run it by pressing F9 or by selecting Run in the Run menu The LED on the Development Board should start flashing if everything went well If this doesn t work review the follow ing points e The target should be ready which is indicated by the message BIOS successfully com piled If you did not receive this message or you get a communication error recom pile the BIOS by typing lt Ctrl Y gt or select Recompile BIOS from the Compile menu e A message reports that No Rabbit processor detected in cases where the Jackrabbit and Prototyping Board are not connected together the wall transformer is not con nected or is not plugged in The red power LED lights whenever power is connected 24 Jackrabbit BL1800 e The programming cable must be connected to the Jackrabbit board The colored wire on the programming cable is closest to pin 1 on header J3 on the Jackrabbit board as shown i
2. RST Figure 6 Location of Prototyping Board Reset Button 2 Reset the Jackrabbit board You may do this as explained in Figure 5 Figure 6 shows the location of the RESET button on the Prototyping Board The Jackrabbit is now ready to operate in the Program Mode 22 Jackrabbit BL1800 3 4 Sample Programs A series of sample programs is provided in the Dynamic C SAMPLES JACKRAB folder to help familiarize you with the Jackrabbit Loading executing and studying these programs will give you a solid hands on overview of the Jackrabbit s capabilities as well as a quick start with Dynamic C as an application development tool These programs are intended to serve as tutorials but then can also be used as starting points or building blocks for your own applications NOTE It is assumed in this section that you have at least an elementary grasp of ANSI C If you do not see the introductory pages of the Dynamic C User s Manual for a sug gested reading list Each sample program has comments that describe the purpose and function of the program Before running any of these sample program make sure that your Jackrabbit is connected to the Prototyping Board and to your PC as described in Section 2 3 Development Hard ware Connections To run a sample program open it with the File menu if it is not already open then com pile and run it by pressing F9 or by selecting Run in the Run menu More complet
3. If you already have Dynamic C installed you are now ready to test your programming connections by running a sample program If you are using a USB port to connect your computer to the Jackrabbit choose Options gt Project Options and select Use USB to Serial Converter under the Communications tab Find the file PONG C which is in the Dynamic C SAMPLES folder To run the 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 STDIO window will open and will dis play a small square bouncing around in a box This program shows that the CPU is working 2 4 1 Troubleshooting If Dynamic C appears to compile the BIOS successfully but you then receive a communi cation error message when you compile and load the sample program it is possible that your PC cannot handle the higher program loading baud rate Try changing the maximum download rate to a slower baud rate as follows e Locate the Serial Options dialog in the Dynamic C Options gt Project Options gt Communications menu Select a slower Max download baud rate If a program compiles and loads but then loses target communication before you can begin debugging it is possible that your PC cannot handle the default debugging baud rate Try lowering the debugging baud rate as follows e Locate the Serial Options dialog in the Dynamic C Options gt Project Options gt Communications
4. erative multitasking differs from a different approach called preemptive multitasking Dynamic C supports both types of multitasking In cooperative multitasking each separate task voluntarily surrenders its compute time when it does not need to perform any more activity immediately In preemptive multitasking control is forcibly removed from the task via an interrupt Dynamic C has language extensions to support multitasking The major C constructs are called costatements cofunctions and slicing These are described more completely in the Dynamic C User s Manual The example below sample program DEMOJR3 C uses cos tatements A costatement is a way to perform a sequence of operations that involve pauses or waits for some external event to take place A complete description of costatements is in the Dynamic C User s Manual The DEMOJR3 C sample program has two independent tasks The first task flashes LED DS4 once a second The second task uses button S1 on the Prototyping Board to toggle the logical value of a virtual switch vswitch and flash DSI each time the button is pressed This task also debounces button S1 32 Jackrabbit BL1800 int vswitch state of virtual switch controlled by button Sall main begin main program set up parallel port A as output WrPortI SPCR NULL 0x84 WrPortI PADR PADRShadow Oxf turn off all LEDs vswitch 0 initialize virtual switch off 1 while 1 Endless l
5. no RS 485 no backup battery 32K SRAM Throughout this manual the term Jackrabbit refers to all three Jackrabbit models in Table 1 individual models are referred to specifically according to the model number in Table 1 Jackrabbit BL1800 1 1 1 Physical amp Electrical Specifications Table 2 lists the basic specifications for the Jackrabbit Table 2 Jackrabbit Specifications Specification Data Power Supply 7 5 V to 25 V DC 100 mA typical Size 2 50 x 3 50 x 0 94 64 mm x 89 mm x 24 mm Environmental 40 C to 70 C 5 95 humidity noncondensing NOTE For complete product specifications see Appendix A in the Jackrabbit BL1800 User s Manual Figure 1 shows the pinout for headers J4 and J5 which carry the signals associated with the Jackrabbit subsystems Figure 1 Pinout for Jackrabbit Headers J4 and J5 Getting Started Manual 1 2 Development Software The Jackrabbit uses the Dynamic C development environment for rapid creation and debugging of runtime applications Dynamic C provides a complete development environ ment with integrated editor compiler and source level debugger It interfaces directly
6. gt Stack window shows the contents of the top of the stack Hex memory dump displays the contents of memory at any address gt STDIO window printf outputs to this window and keyboard input on the host PC can be detected for debugging purposes print f output may also be sent to a serial port or file 20 Jackrabbit BL1800 3 2 Installing Dynamic C Insert the Dynamic C CD from the Development Kit in your PC s CD ROM drive If the installation does not auto start run the setup exe program in the root directory of the Dynamic C CD Install any Dynamic C modules after you install Dynamic C Dynamic C has two components that can be installed together or separately One compo nent is Dynamic C itself with the development environment support files and libraries The other component is the documentation library in HTML and PDF formats which may be left uninstalled to save hard drive space or installed elsewhere on a separate or net work drive for example The installation type is selected in the installation menu shown above The options are e Typical Installation Both Dynamic C and the documentation library will be installed in the specified folder default e Compact Installation Only Dynamic C will be installed e Custom Installation You will be allowed to choose which components are installed This choice is useful to install or reinstall just the documentation Getting Started Manual 21 3 3 Sw
7. is controlled by PA3 on the Prototyping Board This sample program will also watch button S1 PB2 and toggle LED DS1 which is controlled by PAO on off when pressed Note that S1 presses are debounced by the software The pins on Parallel Port A can all be set as either outputs or as inputs via the slave port control register SPCTR Do not use Parallel Port A if the slave port is being used Bits 0 5 on Parallel Port B are always inputs and bits 6 7 are always outputs Do not use Parallel Port B if the slave port is being used e JRIOTEST C exercises the JackRabbit s four digital output channels the one analog input channel and the two analog output channels e JRIO_COF C demonstrates the use of cofunctions with the analog input driver Before you run this sample program connect DA1 to ADO on header J7 of the Proto typing Board to provide an input voltage Once the sample program is running it will read the input voltage ten times while another costatement is executed concurrently The values will be printed out in the Dynamic C STDIO window at the end of the program Before running the RABDBO1 C and the RABDB02 C sample programs you will need to install 3 mm LEDs such as the Vishay Telefunken TLUR4400 at DS5 DS8 on the Jack rabbit Prototyping Board These LEDs are included with the Jackrabbit Development Kit e RABDBO1 C flashes LEDs DS5 DS8 on the Jackrabbit Prototyping Board which are connected to PA4 PA7 when co
8. may be read as inputs by sample applications Four LEDs are connected to the PA1 PA4 pins of the of the Rabbit 2000 microproces sor on the Jackrabbit and may be driven as output indicators by sample applications Prototyping Area A generous prototyping area has been provided for the installation of through hole components Several areas for surface mount devices are also avail able Note that there are SMT device pads on both top and bottom of the Prototyping Board Extension Headers The complete pin sets of the Jackrabbit are duplicated at these two sets of headers Developers can solder wires directly into the appropriate holes or for more flexible development 40 pin header strips can be soldered into place See Figure 1 for the header pinouts RS 232 Two 3 wire or one 5 wire RS 232 serial port are available on the Prototyping Board Refer to the Prototyping Board schematic 090 0088 for additional details A 10 pin 0 1 inch spacing header strip is installed at J1 to permit connection of a ribbon cable leading to a standard DE 9 serial connector Getting Started Manual 11 2 3 Development Hardware Connections There are three steps to connecting the Prototyping Board for use with Dynamic C and the sample programs 1 Attach the Jackrabbit to the Prototyping Board 2 Connect the programming cable between the Jackrabbit and the workstation PC 3 Connect the power supply to the Jackrabbit 12 Jackrabbit BL180
9. menu Choose a lower debug baud rate If there are any other problems e Check to make sure you are using the PROG connector not the DIAG connector on the programming cable e Check both ends of the programming cable to ensure that they are firmly plugged into the PC and the programming port on the Jackrabbit e Ensure that the Jackrabbit is firmly and correctly installed in its connectors on the Prototyping Board e Select a different COM port within Dynamic C From the Options menu select Project Options then select Communications Select another COM port from the list then click OK Press lt Ctrl Y gt to force Dynamic C to recompile the BIOS If Dynamic C still reports it is unable to locate the target system repeat the above steps until you locate the active COM port 16 Jackrabbit BL1800 2 5 Where Do I Go From Here If everything appears to be working we recommend the following sequence of action 1 Run all of the sample programs described in Section 3 4 to get a basic familiarity with Dynamic C and the Jackrabbit s capabilities 2 For further development refer to the Jackrabbit BL1800 User s Manual for details of the board s hardware components A documentation icon should have been installed on your workstation s desktop click on it to reach the documentation menu You can create a new desktop icon that points to default htm in the docs folder in the Dynamic C installation folder 3 For advanc
10. output pins Each port is divided into an upper and a lower nibble All bits of each nibble must be updated simultaneously Each nibble may be updated constantly at a rate of perc1k 2 or on a match of a selected timer Timer Al B1 or B2 The bits used to select the update rate for each nibble are left random at power up If a mode other than perc1k 2 is selected the bits of a particular port will not update on a simple writing to the port s data register In particular PDS the RS 485 transmitter control will not set the RS 485 transmitter enable unless the upper nibble of Port D is configured properly The JR485Init function in Dynamic C release 6 16 has provision to disable the special clocking features associated with the high nibble of Port D This effectively disables digital to analog D A converter output channel DA1 the low resolution D A converter channel which also uses PD4 Channel DAO has its PWM output clocked separately with the low nibble and so is not affected Because the analog to digital converter uses D A channel DAO analog to digital conversion is not affected There are three RS 485 serial drivers Sets up parallel port D pins for RS 485 use Sets pin 3 DE of the SP483EN chip high to disable Rx and enable Tx Resets pin 3 DE of the SP483EN chip low to disable Tx and enable Rx Getting Started Manual 39 3 7 Upgrading Dynamic C Dynamic C patches that focus on bug fixes are available from time to tim
11. port E The function void jrioInit initializes the I O drivers for Jackrabbit In particular it sets up parallel port D bits 1 2 and 4 for analog output port E bits 0 3 for digital output and starts up the pulse width modulation routines for the A D and D A channels Note that these routines can consume up to 20 of the CPU s processing power the routines use timer B and the B1 and B2 match registers 3 6 1 2 Digital Output The Jackrabbit board contains four high power digital output drivers HVO HV3 on header J4 These can be turned on and off with the following functions from the library JRIO LIB HVO HV1 and HV2 are open collector sinking outputs and are able to sink up to 1 A 200 mA for the BL1810 and BL1820 from a 30 V source connected to the K line on header J4 HV3 is a sourcing output that is able to source up to 500 mA 100 mA for the BL1810 and BL1820 from a 30 V source connected to the K line CAUTION Remember to cut the trace between K and Vcc inside the outline for header JP2 on the top side of the Prototyping Board if you are supplying K from a separate power supply An Cut gray trace exacto knife a precision grinder tool as SNOWN or a screwdriver may be used to cut through the traces as shown in Figure 8 l Top Side NOTE Failure to do this could lead to the destruction of the Rabbit 2000 one microprocessor and other components once the Jackrabbit is connected to the Prototy
12. the program is running Add the variable vswitch to the list of watch expressions Then tog gle vswitch and the LED Then type lt Ctrl U gt to observe vswitch again 3 5 1 Advantages of Cooperative Multitasking Cooperative multitasking as implemented with language extensions has the advantage of being intuitive Unlike preemptive multitasking variables can be shared between different tasks without having to take elaborate precautions Sharing variables between tasks is the greatest cause of bugs in programs that use preemptive multitasking It might seem that the biggest problem would be response time because of the big loop time becoming long as the program grows Our solution for that is a device caused slicing that is further described in the Dynamic C User s Manual 34 Jackrabbit BL1800 3 6 Jackrabbit Function Calls 3 6 1 I O Drivers The Jackrabbit board contains four high power digital output channels two D A converter output channels and one A D converter input channel These I O channels can be accessed using the functions found in the JRIO LIB library 3 6 1 1 Initialization The function jrioInit must be called before any other function from the JRIO LIB library This function initializes the digital outputs and sets up the driver for the analog input outputs The digital outputs correspond to the Rabbit processor s port E bits 0 3 and the analog I O uses timer B bits 1 2 and 4 of port D and bits 6 and 7 of
13. to those described above for ana In NOTE See sample program JRIO_COF C for an example of the use of cof_analn 38 Jackrabbit BL1800 3 6 2 Serial Communication Drivers Library files included with Dynamic C provide a full range of serial communications sup port The RS232 LIB library provides a set of circular buffer based serial functions The PACKET LIB library provides packet based serial functions where packets can be delim ited 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 transmit ting 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 3 6 2 1 RS 485 Serial Communication Drivers The JR485 LIB library in the Dynamic C LIB JRABLIB directory contains three RS 485 drivers for use with the Jackrabbit These drivers are used with the drivers for Serial Port D in the RS232 LIB library because serDopen uses PCO TXD and PC1 RXD which are connected to pin 4 and pin 1 of the SP483EN RS 485 chip at U6 This chip is half duplex requiring pin 3 Data Enable to be high for pins 6 and 7 to act as outputs and low for those pins to act as inputs Parallel Ports D and E on the Rabbit 2000 are double buffered to provide precisely timed updating of the
14. with the target system eliminating the need for complex and unreliable in circuit emulators Dynamic C must be installed on a Windows workstation with at least one free serial USB or COM port for communication with the target system See Chapter 3 Software Instal lation amp Overview for complete information on installing Dynamic C 1 3 How to Use This Manual This Getting Started manual is intended to give users a quick but solid start with the Jack rabbit It does not contain detailed information on the hardware capabilities or the Dynamic C development environment Most users will want more detailed information on some or all of these topics in order to put the Jackrabbit to effective use 1 3 1 Additional Product Information Detailed information about the Jackrabbit will be found in the Jackrabbit BL1800 User s Manual provided on the accompanying CD ROM in both HTML and Adobe PDF format TIP We recommend that anyone not thoroughly familiar with Z World embedded con trol systems at least read through the rest of this manual to gain the necessary familiar ity to make use of the more advanced information 1 3 2 Additional Reference Information In addition to the product specific information contained in the Jackrabbit BL1800 User s Manual several higher level reference manuals are provided in HTML and PDF form on the accompanying CD ROM Advanced users will find these references valuable in developing systems bas
15. 0 2 3 1 Attach Jackrabbit to Prototyping Board To attach the Jackrabbit board to the Prototyping Board turn the Jackrabbit board over so that the battery is facing up Plug the pins from headers J4 and J5 on the bottom side of the Jackrabbit board into the header sockets at J2 and J6 on the Prototyping Board as indicated in Figure 3 Prototyping Board Jackrabbit mi Board Battery Pao O O PA1 J2 Pa2 O O PA3 GND O O vec GND O O vcc 00000 l00000p 00000 0000 Db OC00000000 Op 3 2 R NOTE It is important that you line up the pins on headers J4 and J5 of the Jackrabbit Q ee 6 vcd O O vec smo O O smi IOBEN O O JSTAT IRST O O jon DS8 DS7 Neno O O veat 9 a ER E Figure 3 Attach Jackrabbit Board to Prototyping Board board exactly with the corresponding pins of header sockets J2 and J6 on the Prototyp ing Board The header pins may become bent or damaged if the pin alignment is offset and the Jackrabbit might not work Permanent electrical damage to the may also result if a misaligned Jackrabbit is powered up Press the Jackrabbit s pins firmly into the Prototyping Board headers Getting Started Manual 13 2 3 2 Connect Programming Cable The programming cable connects the Jackrabbit to the PC running Dynamic C to down lo
16. 3 0 V Similarly set ting DA1 to PWM MIN will output 0 6 V and setting it to PWM_MAX1 will output 3 6 V Val ues below PWM MIN will be rounded down to 0 and values above PWM MAXO PWM MAX1 for DA1 will be rounded up to 1024 The output channels can also be set in an always on or always off mode which does not require CPU cycles The always on mode is set by requesting an output value of 1024 and will provide about 3 4 V on channel DAO and 3 6 V on DATI The always off mode is selected by asking for a value of 0 and provides an output of around 0 1 V on DAO and 0 0 V on DAI 36 Jackrabbit BL1800 Table 4 provides a summary of the possible analog output voltages corresponding to val ues given in the anaOut function Table 4 Typical Analog Output Voltages Corresponding to Values in anaOut Function Channel 0 PWM MIN PWM MAX 1024 DAO 0 08 V 0 08 V 2 875 V 3 4 V DAL 0 004 V 0 63 V 3 6 V 3 6 V The output value is set using the following function sets the state of an analog output channel jriolInit must be called first channel is the output channel number 0 or 1 on the Jackrabbit value is an integer from 0 1024 that corresponds to an output voltage as shown in Table 4 NOTE See the sample program JRIOTEST C for examples of using the anaOut func tion Effect of Interrupts on Analog I O The stability of the voltage output and hence the voltage input determinat
17. Z WWORLD Jackrabbit BL1800 C Programmable Single Board Computer Getting Started Manual 019 0072 050525 F Jackrabbit BL1800 Getting Started Manual Part Number 019 0072 050525 F Printed in U S A 2000 2005 Z World Inc All rights reserved Z World reserves the right to make changes and improvements to its products without providing notice Trademarks Rabbit is a registered trademark of Rabbit Semiconductor Rabbit 2000 is a trademark of Rabbit Semiconductor Dynamic C and Z World are registered trademarks of Z World Inc Z World Inc 2900 Spafford Street Davis California 95616 6800 USA Telephone 530 757 3737 Fax 530 753 5141 www zworld com Jackrabbit BL1800 TABLE OF CONTENTS Chapter 1 Introduction 1 ASA ep Be aa ee pp ei ri 1 1 1 1 Physical amp Electrical Specifications sms nnennnenennennnennnn nn nn nn nn nn n ra nnn nanna 3 1 2 Development SOLTWATE ssi sic ciscsceeestssnscaneshsses cane er Eo EA EEEE EERE EE E EREKE KEE AE TETEE OEE OEE ES 4 1 3 How to Use IA 4 1 3 1 Additional Product Information oooocnncccnocanocnnonnnonncnonecon canon conc nronnnnnnc nono non non n cr non n ran nc nn non nnnnnncnnnns 4 1 3 2 Additional Reference Information ces ceceeeccesseceseeceseeesceeeneecseceeecseeesaeeeaeeceeseneceeecnaeeeaeenaees 4 1 3 3 Using Online Documentation eee ceesseceecssececescesecescesecesceeseaseaecaaesaecsecsaecneseseeeeeeeeenenes D T4 CE Co
18. a program When you load a program it appears in an edit window You can compile by selecting Compile on the task bar or from the Compile menu When you compile the program it is compiled into machine language and downloaded to the target over the serial port The execution proceeds to the first statement of main where it pauses waiting for you to command the program to run which you can do with the F9 key or by selecting Run on the Run menu If want to compile and start the program running with one keystroke use F9 the run command If the program is not already compiled the run command will compile it first e Single stepping This is done with the F8 key The F7 key can also be used for single stepping If the F7 key is used then descent into subroutines will take place With the F8 key the subroutine is executed at full speed when the statement that calls it is stepped over 26 Jackrabbit BL1800 e Setting break points The F2 key is used to turn on or turn off toggle a break point at the cursor position if the program has already been compiled You can set a break point if the program is paused at a break point You can also set a break point in a program that is running at full speed This will cause the program to break if the execution thread hits your break point e Watch expressions A watch expression is a C expression that is evaluated on command in the watch window An expression is basically any type of C formula that can
19. accompanying Prototyping Board NOTE This chapter and this manual assume that you have the Jackrabbit Development Kit If you purchased a Jackrabbit board by itself you will have to adapt the informa tion in this chapter and elsewhere to your test and development setup 2 1 Development Kit Contents The Jackrabbit Development Kit contains the following items BL1810 single board computer Prototyping Board AC adapter 12 V DC 1 A Included only with Development Kits sold for the North American market A header plug leading to bare leads is provided to allow overseas users to connect their own power supply with a DC output of 7 5 25 V NOTE The linear voltage regulator becomes rather hot for voltages above 15 V 10 pin header to DE9 programming cable with integrated level matching circuitry Dynamic C CD ROM with complete product documentation on disk This Getting Started manual A bag of accessory parts for use on the Prototyping Board Screwdriver Rabbit 2000 Processor Easy Reference poster Registration card Getting Started Manual 9 2 2 Prototyping Board The Prototyping Board included in the Development Kit makes it easy to connect a Jack rabbit board to a power supply and a PC workstation for development It also provides some basic I O peripherals switches and LEDs as well as a prototyping area for more advanced hardware development For the most basic level of evaluation and development the Prototy
20. ad programs and to monitor the Jackrabbit during debugging Connect the 10 pin connector of the programming cable labeled PROG to header J3 on the Jackrabbit board as shown in Figure 4 Be sure to orient the marked usually red edge of the cable towards pin 1 of the connector Do not use the DIAG connector which is used for a normal serial connection NOTE Use only the programming cable that has a red shrink wrap around the RS 232 level converter Z World part number 101 0513 which is supplied with the Develop ment Kit Other Z World programming cables might not be voltage compatible or their connector sizes may be different 2 JACKRABBIT BOARD minnn niNNNINNININONMT KafatataraintataAtATA tn e Rabbit 2000 TOOT TINI TITTI BAT ja El to Y3 E JACKRABBIT Z World Inc Colored side lines up with pin 1 Programming connector PROTOTYPING BOARD N Piano To Bikini PC COM port Figure 4 Power and Programming Cable Connections to Jackrabbit Board Connect the other end of the programming cable to a COM port on your PC 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 Jack
21. ana conca oaaae 39 3 6 2 1 RS 485 Serial Communication Drivers ccccccccccinccncininocinincnnanananononcnnonnnnnnnnananicinininannnno 39 3 7 Upgradine Dynamic Ester is 40 327 1 Add On MM e idas 40 Notice to Users 41 Index 43 Schematics 45 Jackrabbit BL1800 1 INTRODUCTION The Jackrabbit is a high performance C programmable single board computer with a compact form factor A Rabbit 2000 microprocessor operating at 29 5 MHz provides fast data process ing 1 Features 29 5 MHz clock 24 CMOS compatible I O 3 analog channels 1 A D input 2 PWM D A outputs 4 high power outputs factorv configured as 3 sinking and 1 sourcing 4 serial ports 2 RS 232 or 1 RS 232 with RTS CTS 1 RS 485 and 1 CMOS compatible 6 timers five 8 bit timers and one 10 bit timer 128K SRAM 256K flash EPROM Real time clock Watchdog supervisor Voltage regulator Backup battery Appendix A provides detailed specifications for the Jackrabbit Getting Started Manual 1 Three versions of the Jackrabbit are available Their standard features are summarized in Table 1 Table 1 Jackrabbit Features Model Features BL1800 Full featured controller with switching voltage regulator BL1800 with 14 7 MHz clock 128K flash EPROM linear BL1810 voltage regulator sinking outputs sink up to 200 mA sourcing output sources up to 100 mA RS 232 serial ports rated for 1 kV ESD BL1820 BL1810 with 3 additional digital I O
22. annot be used while an input voltage is being measured although channel DAO is still available The value returned corresponds to the value that DAO required to match the input voltage you would call anaOut 0 value for DAO to provide that same voltage If the value returned is negative then the function considers the value suspect for some reason most likely a failure of the DAO voltage to settle quickly The value can be taken as is or another measurement can be done Analog input for the Jackrabbit analog input channel ADO jrioInit must be called first channel is the input channel number 0 only on the Jackrabbit An integer between 0 and 1024 will be returned in value corresponding to a voltage obtained if output channel DAO was set to that value If a value is found but the voltage has not appeared to fully settle the value will be negative but equal in magnitude to the found voltage to allow remeasurement if desired NOTE See sample program JRIOTEST C for an example of the use of ana In Two versions of the analog input function are available the standard function listed above that does not return until the measurement has been made and a cofunction version that can be called from within a costatement This cofunction version allows other tasks to be performed while the voltage match is being made The voltage measurement will take ten calls of the cofunction version to make a measurement The parameters are identical
23. d to tie PC4 and PC3 TxB and RxC together at header J1 as shown in the diagram The Dynamic C STDIO window will display the error sequence 30 Jackrabbit BL1800 3 4 4 RS 485 Serial Communication Sample Program The following sample program illustrates the use of the RS 485 serial drivers The sample program shows a byte being transmitted and then the RS 485 transceiver waits for a reply define DINBUFSIZE 15 define DOUTBUFSIZE 15 void main void int nEcho nReply char cChar Jr485Init Init RS485 Control PD5 serDopen 9600 Open Serial Port D for Forever for cChar a cChar lt z cChar Send Alphabet Jr485Tx Enable RS485 Transmitter serDputc cChar Send Byte while nEcho serDgetc 1 Wait for Echo Jr485Rx Disable RS485 Transmitter while nReply serDgetc 1 Wait for Reply printf 02x gt 02x n nEcho nReply NOTE If your version of Dynamic C is earlier than 6 55 see Technical Note 117 Jack rabbit BL1800 Series RS 485 Bulletin for information on restrictions on using both DATI and RS 485 at the same time Getting Started Manual 31 3 5 Cooperative Multitasking Cooperative multitasking is a convenient way to perform several different tasks at the same time An example would be to step a machine through a sequence of steps and at the same time independently carry on a dialog with the operator via a human interface Coop
24. der The latest versions of all documents are always available for free unregistered download from our web sites as well Printing Electronic Manuals We recognize that many users prefer printed manuals for some uses Users can easily print all or parts of those manuals provided in electronic form The following guidelines may be helpful e Print from the Adobe PDF versions of the files not the HTML versions e If your printer supports duplex printing print pages double sided e If you do not have a suitable printer or do not want to print the manual yourself most retail copy shops e g Kinkos AlphaGraphics etc will print the manual from the PDF file and bind it for a reasonable charge about what we would have to charge for a printed and bound manual Getting Started Manual 5 1 4 CE Compliance Equipment is generally divided into two classes CLASS A CLASS B Digital equipment meant for light industrial use Digital equipment meant for home use Less restrictive emissions requirement less than 40 dB uV mat 10 m 40 dB relative to 1 uV m or 300 u V m More restrictive emissions requirement 30 dB u V m at 10 m or 100 uV m These limits apply over the range of 30 230 MHz The limits are 7 dB higher for frequen cies 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 The Jac
25. ding on your application so additional shielding or filtering may be needed to maintain the Class B emission qualification NOTE If no ferrite absorbers are fitted the Jackrabbit boards will still meet EN55022 1998 Class A requirements as long as the spectrum spreader is turned on The spectrum spreader is on by default for Jackrabbit models BL1810 and BL1820 The spectrum spreader is off by default for the Jackrabbit model BL1800 and must be turned on with at least one wait state in order for the BL1800 model to be CE compliant Section 2 7 3 in the Jackrabbit BL1800 User s Manual provides further information about the spectrum spreader and its use and includes information on how to add a wait state 1 4 1 Design Guidelines Note the following requirements for incorporating the Jackrabbit series of single board computers into your application to comply with CE requirements General e The power supply provided with the Development Kit is for development purposes only It is the customer s responsibility to provide a CE compliant power supply for the end product application e When connecting the Jackrabbit single board computer to outdoor cables the customer is responsible for providing CE approved surge lightning protection e Z World 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 Z World also recommen
26. ds using properly shielded I O cables in noisy electromagnetic environments e When installing or servicing the Jackrabbit it is the responsibility of the end user to use proper ESD precautions to prevent ESD damage to the Jackrabbit Safety e For personal safety all inputs and outputs to and from the Jackrabbit series of single board computers must not be connected to voltages exceeding SELV levels 42 4 V AC peak or 60 V DC Damage to the Rabbit 2000 microprocessor may result if voltages outside the design range of 0 V to 5 5 V DC are applied directly to any of its digital inputs e The lithium backup battery circuit on the Jackrabbit single board computer has been designed to protect the battery from hazardous conditions such as reverse charging and excessive current flows Do not disable the safety features of the design 1 4 2 Interfacing the Jackrabbit to Other Devices Since the Jackrabbit series of single board computers is designed to be connected to other devices good EMC practices should be followed to ensure compliance CE compliance is ultimately the responsibility of the integrator Additional information tips and technical assistance are available from your authorized Z World distributor and are also available on our Web site at www zworld com Getting Started Manual 7 Jackrabbit BL1800 2 HARDWARE SETUP This chapter describes the Jackrabbit board in more detail and explains how to set up and use the
27. e Check the Web sites e www zworld com support or e www rabbitsemiconductor com support for the latest patches workarounds and bug fixes 3 7 1 Add On Modules 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 Z World offers add on Dynamic C modules for purchase including the popular LC 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 40 Jackrabbit BL1800 NOTICE TO USERS Z WORLD PRODUCTS ARE NOT AUTHORIZED FOR USE AS CRITICAL COMPONENTS IN LIFE SUPPORT DEVICES OR SYSTEMS UNLESS A SPECIFIC WRITTEN AGREEMENT REGARDING SUCH INTENDED USE IS ENTERED INTO BETWEEN THE CUSTOMER AND Z WORLD PRIOR TO USE Life support devices or systems are devices or systems intended for surgical implantation into the body or to sustain life and whose failure to perform when properly used in accordance with instructions for use provided in the labeling and user s manual can be reasonably expected to result in significant injury No complex software or hardware system is perfect Bugs are always present in a system of any size In order to prevent danger to life or property it is the responsibility of the system designer to incorporat
28. e redundant protective mechanisms appropriate to the risk involved All Z World products are 100 percent functionally tested Additional testing may include visual quality con trol inspections or mechanical defects analyzer inspections Specifications are based on characterization of tested sample units rather than testing over temperature and voltage of each unit Z World products may qualify components to operate within a range of parameters that is different from the manufacturer s recom mended range This strategy is believed to be more economical and effective Additional testing or burn in of an individual unit is available by special arrangement Getting Started Manual 41 42 Jackrabbit BL1800 A additional information online documentation 5 Teferences nn 4 c C language L 19 CE compliance 0 0 0 6 design guidelines 7 D Development Kit 9 Dynamic C LL 4 19 Installing L 21 standard features 20 debugging oe 20 telephone based technical SUPPOTt ooo eee 40 upgrades and patches 40 USB port settings 16 F features Jackrabbit eeeeeeeeees 1 Prototyping Board 10 11 H hardware connections 12 power supply Lm 15 programming cable 14 hardware reset 0 15 J Jackrabbit A ie era 1 models LL 2 M models stasis dacs 2 P Program Mode ossee 22 programmin
29. e flash memory or in the data SRAM included on the Jackrabbit The flash memory and SRAM options are selected with the Options gt Project Options gt 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 NOTE An application can be developed in RAM but cannot run standalone from RAM after the programming cable is disconnected All standalone applications can only run from flash memory NOTE Do not depend on the flash memory sector size or type Due to the volatility of the flash memory market the Jackrabbit and Dynamic C were designed to accommo date flash devices with various sector sizes 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 Getting Started Manual 19 Dynamic C has a number of standard features e Full feature source and or assembly level debugger no in circuit emulator required e Royalty free TCP IP stack with source code and most common protocols e Hundreds of functions in sou
30. e information on Dynamic C is provided in the Dynamic C User s Manual The sample programs are listed in Table 3 Table 3 Jackrabbit Sample Programs DEMOJRI C DEMOJR2 C DEMOJR3 C JRIOTEST C JR FLOWCONTROL C JR PARITVX C JRIO COF C LCD DEMO C RABDBO1 C RABDBO2 C The first five sample programs provide a step bv step introduction to the Jackrabbit board Additional sample programs illustrate more advanced topics Getting Started Manual 23 3 4 1 DEMOJR1 C This sample program can be used to illustrate some of the functions of Dynamic C First open the file DEMOJR1 C which is in the SAMPLES JACKRAB folder The program will appear in a window as shown in Figure 7 below minus some comments Use the mouse to place the cursor on the function name WrPortI in the program and type lt Ctrl H gt This will bring up a documentation box for the function WrPortI In general you can do this with all functions in Dynamic C libraries including libraries you write yourself Close the documentation box and continue C programs begin with main ME sal NULL is a macro for a zero pointer main write to SPCR register to L iii parallel port A WrPortI SPCR NULL 0x84 Write all 1 s to port A to turn off all LEDs WrPortI PADR PADRShadow Oxff Start a loop Set bit 2 toa 1 a LED DS3 off while 1 4 BitWrPortI PADR PADRShadow 1 2
31. ed development topics refer to the Dynamic C User s Manual also in the online documentation set 2 5 1 Technical Support NOTE If you purchased your Jackrabbit through a distributor or through a Z World partner contact the distributor or partner first for technical support If there are any problems at this point e Use the Dynamic C Help menu to get further assistance with Dynamic C e Check the Z World Rabbit Semiconductor Technical Bulletin Board at www zworld com support bb e Use the Technical Support e mail form at www zworld com support questionSubmit shtml Getting Started Manual 17 18 Jackrabbit BL1800 3 SOFTWARE INSTALLATION amp OVERVIEW To develop and debug programs for the Jackrabbit and for all other Z World and Rabbit Semiconductor hardware you must install and use Dynamic C It runs on an IBM compatible PC and is designed for use with Z World single board computers and other devices based on the Rabbit microprocessor This chapter takes you through the installation of Dynamic C and then provides a tour of its major features with respect to the Jackrabbit 3 1 An Overview of Dynamic C Dynamic C has been in use worldwide since 1989 It is specially designed for program ming embedded systems and features quick compile and interactive debugging A com plete reference guide to Dynamic C is contained in the Dynamic C User s Manual You have the choice of doing your software development in th
32. ed on the Jackrabbit e Dynamic C User s Manual e Dynamic C Function Reference Manual e Rabbit 2000 Microprocessor User Manual 4 Jackrabbit BL1800 1 3 3 Using Online Documentation We provide the bulk of our user and reference documentation in two electronic formats HTML and Adobe PDF We do this for several reasons We believe that providing all users with our complete library of product and reference manuals is a useful convenience However printed manuals are expensive to print stock and ship Rather than include and charge for manuals that every user may not want or pro vide only product specific manuals we choose to provide our complete documentation and reference library in electronic form with every development kit and with our Dynamic C development environment NOTE The most current version of Adobe Acrobat Reader can always be downloaded from Adobe s web site at http www adobe com We recommend that you use version 4 0 or later Providing this documentation in electronic form saves an enormous amount of paper by not printing copies of manuals that users don t need Finding Online Documents The online documentation is installed along with Dynamic C and an icon for the docu mentation menu is placed on the workstation s desktop Double click this icon to reach the menu If the icon is missing create a new desktop icon that points to default htm in the docs folder found in the Dynamic C installation fol
33. g cable Jackrabbit connections 14 setting modes eee 22 Prototyping Board 10 expansion area 11 features semen 10 11 R o cies ie ik E E 15 Run Mode G 22 S sample programs DEMOJRI C oe 23 24 DEMOJR2 C oe 23 28 DEMOJR3 C 23 28 32 Dynamic C break point 25 cooperative multitasking 32 editing Luisa 26 single stepping 25 watch expression 25 watching variables dynami callY unite 26 JRIO_COF C oo 23 28 JRIOTEST C 23 28 LCD DEMO C 23 29 PONG AC nnsiinaiiroriss 16 RABDBOL C nasses 23 28 RABDB02 C 23 28 RS 232 serial communication JR_FLOWCONTROL C iia 23 30 JR PARITV C 23 30 RS 485 serial communica LOM as u 31 INDEX software analog input Low 38 ANAL se ys in 38 cof analn oo eee 38 analog output 36 ANAOUL Lee 37 board initialization 35 jriolnit L 35 digital output 35 digOff Lsien 36 ALO soc sseceosscneseasteiesses 36 digOut L 36 VO drivers nn 35 libraries JRIO LIB L 35 PACKET LIB Lm00 39 RS232 LIB oe 39 RS 232 serial communica TOM MAES 39 RS 485 serial communica TOM ika 39 serial communication JrABSINIL LL 39 JTABSRX i iiiimius iebes 39 JFABSIX crias 39 specifications physical and electrical 3 T technical support 17 U USB serial port converter 14 Dynamic C
34. g of LED DS4 is performed by the costatement starting at the line marked 2 Costatements need to be executed regularly often at least every 25 ms To accomplish this the costatements are enclosed in a while loop The term while loop is used as a handy way to describe a style of real time programming in which most operations are done in one loop The while loop starts at 1 and ends at 7 The function BigLoopTop is Getting Started Manual 33 used to collect some operations that are helpful to do once on every pass through the loop Place the cursor on this function name BigLoopTop and hit lt Ctrl H gt to learn more The statement at 3 waits for a time delay in this case 200 ms The costatement is being executed on each pass through the big loop When a wait for condition is encountered the first time the current value of MS TIMER is saved and then on each subsequent pass the saved value is compared to the current value If a wait for condition is not encoun tered then a jump is made to the end of the costatement 4 and on the next pass of the loop when the execution thread reaches the beginning of the costatement execution passes directly to the wait for statement Once 200 ms has passed the statement after the waitfor is executed The costatement has the property that it can wait for long periods of time but not use a lot of execution time Each costatement is a little program with its own statement pointer that advances in
35. include operators variables and function calls but not statements that require multiple lines such as for or switch You can have a list of watch expressions in the watch window If you are single stepping then they are all evaluated on each step You can also com mand the watch expression to be evaluated by using the lt Ctrl U gt command When a watch expression is evaluated at a break point it is evaluated as if the statement was at the beginning of the function where you are single stepping If your program is running you can also evaluate watch expressions with a lt Ctrl U gt if your program has a run watch command that is frequently executed In this case only expressions involv ing global variables can be evaluated and the expression is evaluated as if it were ina separate function with no local variables Getting Started Manual 27 3 4 2 Other Sample Programs Illustrating Digital I O e DEMOJR2 C repeatediv flashes LED DS3 which is controlled by PA2 on the Proto typing Board This sample program also illustrates the use of the runwatch function to allow Dynamic C to update watch expressions while running To test this 1 Add a watch expression for k under Inspect Add Del Watch Expression 2 Click Add to top so that it will be permanently in the watch list 3 While the program is running type lt Ctrl U gt to update the watch window e DEMOJR3 C demonstrates the use of costatements to LED DS4 which
36. ion as well depends on the ability of the driver to respond quickly to interrupt requests Dynamic C debugging use of the print function or any serial communications can disrupt the pulse width modulation utilized by the driver and cause fluctuations in the voltage out puts Avoid using serial communications or printf statements during portions of your program where the voltage must remain steady Also be aware that debugging and running Dynamic C in polling mode will cause fluctuations Finally be certain to disable the PWM drivers by setting the output values to 0 or 1024 when you are done using them to free up the CPU Calibration of Values to Voltages The analog output channels on the Jackrabbit board can be more accurately calibrated for each individual Jackrabbit board in the following manner calibration of DAO is assumed in this example calibration of DA1 would proceed similarly e Set desired channel output to PWM MIN e Measure voltage V on DAO min Set desired channel output to PWM MAXO e Measure voltage V on DAO max A linear relation between input value and voltage can now be calculated Getting Started Manual 37 Vmax Vmin m BWM_MAXO PWM_MIN b Vmax mx PWM MAXO voltage m x value b 3 6 1 4 Analog Input The analog input channel on the Jackrabbit ADO on header J5 works bv varving analog output channel DAO until its voltage matches the input voltage on ADO DAO obviously c
37. itching Between Program Mode and Run Mode The Jackrabbit is automatically in Program Mode when the programming cable is attached and is automatically in Run Mode when no programming cable is attached See Figure 5 rs us uf J ut j mi Eg e oot T m Sse 9 T 4 E J5 KI GND a avec m H vec qa sj ono ono cfm sj vec wI PAD Go afea mm Timo pid 4 ja see jA H ta ke BIT imm Paz o opaa use sa usd a Pas o of Pas El H ros aforo PM e of PAS 4 a Pas o 9 HPA7 y3 g B Pego efores Pas o of PAZ ya g a enD e sfoenp f noononoonnnn gJ sram B Paga aporos eno eno gt JAnnnmmmam gJ sram E Pd appres reo e ora Efe B H B pcs fa sfeer Po o ope BE E 8 B rosa o opor peo ops B H d E aoco of aceno Y pes sopra g E El E ADO fo of acnp peso ofares 9 E g B Dre afanar Pao efores E E g E paorjo afinar Pos o ofpe Rabbit2000 B q 5 Poa ajro Pee e fipe7 g Rabbit2000 E g B Poos aH Por woga sprak g E g B Pozo afpros En woo je apros B B 8 B Pozo af pos sw Qe orr 9 E 8 B Poo ef oros code err 8 E B poso af Pos Pes o ofre g E A F pps o apor Pes Queres A B SI H PDS o of POT Peso ores 9 E coo span Pesci ef
38. krabbit BL1800 single board computer has been tested and was found to be in conformity with the following applicable immunity and emission standards The BL1810 and BL1820 single board computers are also CE qualified as they are sub versions of the BL1800 single board computer Boards that are CE compliant have the CE mark NOTE Earlier versions of the BL1800 sold before 2002 that do not have the CE mark are not CE complaint Immunity The Jackrabbit series of single board computers meets the following EN55024 1998 immunity standards e EN61000 4 3 Radiated Immunity e EN61000 4 4 EFT e EN61000 4 6 Conducted Immunity Additional shielding or filtering may be required for a heavy industrial environment Emissions The Jackrabbit series of single board computers meets the following emission standards with the Rabbit 2000 spectrum spreader turned on and set to the normal mode The spectrum spreader is only available with Rev C or higher of the Rabbit 2000 microprocessor This microprocessor is used in all Jackrabbit series boards that carry the CE mark e EN55022 1998 Class B e FCC Part 15 Class B In order for the Jackrabbit boards to meet these EN55022 1998 Class B standards vou must add ferrite absorbers to the serial I O cables used for RS 232 and RS 485 serial com munication Depending on vour application vou mav need to add ferrite absorbers to the 6 Jackrabbit BL1800 digital I O cables Your results may vary depen
39. mpl ainCe ii Asia sea p e p a 6 1 4 1 Design Guidelines tdi dies 7 1 4 2 Interfacing the Jackrabbit to Other Devices eee nono ners nee r nn tenna 7 Chapter 2 Hardware Setup 9 2 1 Development Kit Contents 3 sse iisvsisienia etil andes ties 9 2 2 Prototyping Board iio lic 10 2 2 1 Prototyping Board Features ssessennznnnennnnonznzznnnennnnzenzzzznennnnzenzontospenazznrsennszpenaorespessnzazzense 11 2 3 Development Hardware Connections cecceesecesseceeeeceeeeseeeeneeesecececneecsaeceaeecreeeneceeeeesaeeeseeseeeenaes 12 2 3 1 Attach Jackrabbit to Prototyping Board ees eeccessecenceceseeeeeeeeeeaeceececeeeecaeeeeeceeeeseeeeneeeeees 13 2 3 2 Connect Programming Cable isse ans ri ei o 14 2 3 3 Connect POWE ccs ie e A SSA RIEWI 15 2 3 3 1 Overseas Development Kits sse nn nero nn cnn nr rninn con nn non nnonnnnns 15 24 Runa Sample Programm sc ccc cicisceceeclsescosveceescerdecesnocusteebonevesecnsssesntvsensconnbansvesacubaccvecervocussnavensensnvsecnens 16 2 41 NS A A A O 16 2 9 Where Do Go From Here i cc cccesscsosccessesssntncpvaveevsneseonheaseconntneadicoseneysctsonceetacendicenteshovbesveskecuonseesioss 17 E AAPP B p EEE EE E Eae EEEE 17 Chapter 3 Software Installation amp Overview 19 3 1 An Overview of Dvnami Cincinnati MURA aE se E REEE iei 19 3 Installme Dy namic Cura aan iii 21 3 3 Switching Between Program Mode and Run Mode en ennennennenennenennnenennnnennnnnnnn na 22 3 3 1 Changing from Program M
40. n Figure 4 The other end of the programming cable must be connected to the PC serial port The COM port specified in the Dynamic C Options menu must be the same as the one the programming cable is connected to e To check if you have the correct serial port select Compile then Compile BIOS or type lt Ctrl Y gt If the BIOS successfully compiled message does not display try a different serial port using the Dynamic C Options menu until you find the one you are plugged into Don t change anything in this menu except the COM number The baud rate should be 115 200 bps and the stop bits should be 1 Single Stepping Compile or re compile DEMOJR1 C by clicking the Compile button on the task bar The program will compile and the screen will come up with a highlighted character green at the first executable statement of the program Use the F8 key to single step Each time the F8 key is pressed the cursor will advance one statement When you get to the for j 0 j lt statement it becomes impractical to single step further because you would have to press F8 thousands of times We will use this statement to illustrate watch expressions Watch Expression Type lt Ctrl W gt or chose Add Del Watch Expression in the Inspect menu A box will come up Type the lower case letter j and click on add to top and close Now continue single stepping with F8 Each time you step the watch expression j will be evaluated and printed in the
41. ness you can connect a potentiometer between ground and 5 V with the arm going to the VEE pin Check the specs on the LCD before doing this as some LCDs may require a different connection VCC is 5 V and VSS is ground Getting Started Manual 29 3 4 3 RS 232 Serial Communication Sample Programs JR_FLOWCONTROL C This program demonstrates hardware flow control by config uring Serial Port C PC3 PC2 for CTS RTS with serial data coming from TxB at 115 200 bps One character at a time is received and is displayed in the STDIO window To set up the Prototyping Board you will need to tie PC4 and PCS TxB and RxB together at header J1 and you will also tie PC2 and PC3 TxC and RxC together as shown in the diagram A repeating triangular pattern should print out in the STDIO window The program will periodically switch flow control on or off to demonstrate the effect of no flow control Refer to the serBflowcontrol0n function call in the Dynamic C Function Refer ence Manual for a general description on how to set up flow control lines JR PARITV C This program demonstrates the use of parity modes by repeatedly sending byte values 0 127 from Serial Port B to Serial Port C ae The program will switch between generating parity or not on Serial Port oe B Serial Port C will always be checking parity so parity errors should 31 occur during every other sequence To set up the Prototyping Board you will nee
42. ode to Run Mode mm mnennennenzznzenezznnnenzznnznnnznznnnn zz tntn 22 3 3 2 Changing from Run Mode to Program Mode cceeesseesceceseeeseceececesecesceceeceeeneceeecnaeeeneeeeeeens 22 3 4 Sample Programs o2 scisssccchecebiseisectscesvhesenlesesnesssoetesnesassieh usevencedelstavuccansvbbssta ynsvhonsnasssvaresteodiebvaseds stabs 23 3 4 1 DEMOIRl ini ri 24 3 4 2 Other Sample Programs Illustrating Digital I O ooooonnccinccnoncncccconcconnnnonnnnnnnonrncnnncconeronncnnncconcnnnns 28 3 4 3 RS 232 Serial Communication Sample Programs e nennenenzenezenznennnnennnnen nn tna 30 3 4 4 RS 485 Serial Communication Sample Program eenennzennnnzznnennzznnznznnnnznnn nn 31 3 5 Cooperative Multitasking 0 0 cece eesceeseceseceeeeceeeesceseeeecseceececeseecsaeceacecneeeeneceseecsaeesaeceeecnaeeeneeeeneees 32 3 5 1 Advantages of Cooperative Multitasking ss sssennnnnnnnenznnznnnnznnenznnzzananznrnrnnzzananmn taa 34 Getting Started Manual 3 6 Jackrabbit Function Calls en rn tana t ann taa satira rasna rrnnenanana nanna 35 OA OD VERS Ag ESO ied SO Re 35 IL A a en 35 3 6 1 2 Digital Outputs ccc coecsce sets os cost sebcbes e babe a scp tbe Bad a Eba SE EES ee Iva PA ia ti ea SE 35 3 6 1 3 Analog Output sssusa a p A LSS pp B pn L 36 3 06 14 An log Input bii Riebu pa per pk Ap bad ES PS e ATI 38 3 6 2 Serial Communication Drivers ooocononocoooncnonoconoconocononcncnnanananonononnnnnncncnnnonononononanan
43. oop BigLoopTop Begin a big endless loop first task flash LED DS4 everv second for 200 milliseconds 2 costate begin a costatement BitWrPortI PADR amp PADRShadow 0 3 LED DS4 on 3 waitfor DelavMs 200 light on for 200 ms BitWrPortI PADR amp PADRShadow 1 3 LED DS4 off waitfor DelayMs 800 light off for 800 ms 4 end of costatement second task debounce switch 1 and toggle virtual switch vswitch check button 1 and toggle vswitch on or off costate 5 if BitRdPortI PBDR 2 abort if button not down skip out waitfor DelayMs 50 wait 50 ms if BitRdPortI PBDR 2 abort if button not still down skip out vswitch vswitch toggle virtual switch button was down 50 ms while 1 wait for button to be off 200 ms waitfor BitRdPortI PBDR 2 wait for button to go up waitfor DelayMs 200 wait for 200 milliseconds if BitRdPortI PBDR 2 break if button up break end of while 1 end of costatement make LED agree with vswitch if vswitch has changed 6 if PADRShadow amp 1 vswitch BitWrPortI PADR PADRShadow vswitch 0 7 end of while loop go back to start end of main never come here The numbers in the left margin are reference indicators and are not a part of the code Load and run the program Note that LED DS4 flashes once per second Push button S1 several times and note how LED DSI is toggled The flashin
44. ores 9 E Goo oF cmo 4 Pe ja of Pet B 485 0 of 485 PE2 ja sa pet A B 485 C o of 485 peo la af oND mor voca afiveo PEO Je fono TITTI vee aP vee 0 e mo o Pivi US y Moss e os Pmi us soe of smt El mea oia DIGE SE Bees esa m lig mos MAD Es E esc PE sor sp Ka of sRaw m E gE M cnoca aOVBAT oa ko sfaw gof GND Cfo of veat ol eno Cle sf veo Ea wa RS 485 irst 2 oeno ae l l EE cub C sive Bn a RS 485 ste of eno O Ej na oo m oo RESET RES o HEE minn aa mye eee A FLIET f s e ee a Te jj moooo q 7 JACKRABBIT Z World Inc d TIUTI h JACKRABBIT Z World Inc 2 connector Colored side lines up with pin Press R TON PC COM port RESET Jackrabbit board when changing mode Short out RESET pads below header J5 OR ESET button if using Prototyping Board OR Remove then reapply power after removing or attaching programming cable Figure 5 Jackrabbit Program Mode and Run Mode Setup 3 3 1 Changing from Program Mode to Run Mode 1 Disconnect the programming cable from header J3 of the Jackrabbit board 2 Reset the Jackrabbit board You may do this as explained in Figure 5 Figure 6 shows the location of the RESET button on the Proto typing Board The Jackrabbit is now ready to operate in the Run Mode 3 3 2 Changing from Run Mode to Program Mode 1 Attach the programming cable to header J3 on the Jackrabbit board 00 oo GND
45. ping Board Figure 8 Cut Trace on Prototyping Board When Vcc and K Are Different Getting Started Manual 35 sets the state of a digital output bit jrioInit must be called first channel is the output channel number 0 3 on the Jackrabbit value is the output value 0 or 1 sets the state of a digital output bit to on 1 jrioInit must be called first channel is the output channel number 0 3 on the Jackrabbit sets the state of a digital output bit to off 0 jriolInit must be called first channel is the output channel number 0 3 on the Jackrabbit NOTE See the sample program JRIOTEST C for an example of using the digital out put functions 3 6 1 3 Analog Output The two analog output channels on the Jackrabbit DAO and DA1 on header J5 are con trolled by a pulse width modulation PWM driver This requires the use of some fraction of the CPU cycles when the driver is running up to 20 when both D A channels are used A voltage is selected by giving a value from 0 to 1024 to the driver corresponding roughly to 0 1 V to 3 5 V on DAO Because of the PWM interrupt frequency the PWM driver can provide a continuous range of voltage output in the range from 0 1 V to 3 0 V for DAO and 0 6 V to 3 6 V for DA1 These ranges can be specified with the constants PWM MIN PWM MAXO and PWM MAXI1 In other words setting channel DAO to the value PWM MIN will output 0 1 V and setting it to PWM_MAXO will output
46. ping Board can be used without modification As you progress to more sophisticated experimentation and hardware development modi fications and additions can be made to the board without modifying or damaging the Jack rabbit board itself The Prototyping Board is shown below in Figure 2 with its main features identified Jackrabbit Connectors 1 J2 B ws O Ol oO Oly is OG Qoooooooooooo 26 oojpoooo0oo0o00000 O 5 JOoJ00000000000 ojoopooooooooooo o loojoo Prototyping l Area User Switches oo oo bo K S7 DS6 DS5 DS4 DS3 DS2 DSI WJOOs GNDJO OJvear JE sT O Ojo KO f R O ojsi foo O Ofrxc melo OlxcjT am O Ojpet wm Poo az 3 veefo Olew 3 RXI a B sm O Ojsmi Zioset gt Extension Headers Switch Figure 2 Prototyping Board 10 Jackrabbit BL1800 2 2 1 Prototyping Board Features Power LED The power LED lights whenever power is connected to the Prototyping Board Reset Switch A momentary contact normally open switch is connected directly to the Jackrabbit s RESET_IN pin Pressing the switch forces a hardware reset of the system I O Switches and LEDs Four momentary contact normally open switches are con nected to the PB2 PB5 pins of the Rabbit 2000 microprocessor on the Jackrabbit and
47. rabbit Development Kit An RS 232 USB converter is available through the Z World Web store 14 Jackrabbit BL1800 2 3 3 Connect Power When all other connections have been made you can connect power to the Jackrabbit Hook up the connector from the wall transformer to header J1 on the Jackrabbit board as shown in Figure 4 The orientation of this connector is not important since the VIN posi tive voltage is the middle pin and GND is available on both ends of the three pin header J1 Plug in the wall transformer The Jackrabbit board and the Prototyping Board are ready to be used NOTE A RESET button is provided on the Prototyping Board see Figure 3 to allow hardware reset without disconnecting power To power down the Jackrabbit unplug the power connector from J1 You should discon nect power before making any circuit adjustments in the prototyping area changing any connections to the board or removing the Jackrabbit from the Prototyping Board 2 3 3 1 Overseas Development Kits Development kits sold outside North America include a header connector that may be connected to 3 pin header J1 on the Jackrabbit The connector may be attached either way as long as it is not offset to one side The red and black wires from the connector can then be connected to the positive and negative connections on your power supply The power supply should deliver 7 5 V 25 V DC at 5 W Getting Started Manual 15 2 4 Run a Sample Program
48. rce code libraries and sample programs gt Exceptionally fast support for floating point arithmetic and transcendental functions gt RS 232 and RS 485 serial communication gt Analog and digital I O drivers gt FC SPI GPS file system gt LCD display and keypad drivers e Powerful language extensions for cooperative or preemptive multitasking e Loader utility program to load binary images into Z World targets in the absence of Dynamic C e 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 e Standard debugging features gt Breakpoints Set breakpoints that can disable interrupts gt Single stepping Step into or over functions at a source or machine code level u C OS II aware gt 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 gt 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 gt Register window All processor registers and flags are displayed The contents of general registers may be modified in the window by the user
49. response to conditions On each pass through the big loop as little as one statement in the costatement is executed starting at the current posi tion of the costatement s statement pointer Consult the Dynamic C User s Manual for more details The second costatement in the program debounces the switch and maintains the variable vswitch Debouncing is performed by making sure that the switch is either on or off for a long enough period of time to ensure that high frequency electrical hash generated when the switch contacts open or close does not affect the state of the switch The abort state ment is illustrated at 5 If executed the internal statement pointer is set back to the first statement within the costatement and a jump to the closing brace of the costatement is made At 6 a use for a shadow register is illustrated A shadow register is used to keep track of the contents of an I O port that is write only it can t be read back If every time a write is made to the port the same bits are set in the shadow register then the shadow register has the same data as the port register In this case a test is made to see the state of the LED and make it agree with the state of vswitch This test is not strictly necessary the output regis ter could be set every time to agree with vswitch but it is placed here to illustrate the concept of a shadow register To illustrate the use of snooping use the watch window to observe vswitch while
50. rresponding switches S1 S4 which are connected to PB2 PBS are pressed The buzzer which is driven by HVO from PEO will also sound whenever switch S1 switch is pressed e RABDB02 C flashes LEDs DS5 DS8 on the Jackrabbit Prototyping Board which are connected to PA4 PA7 when corresponding switches 1 S4 which are connected to PB2 PB5 are pressed The buzzer which is driven by HVO from PEO will also sound whenever switch S1 switch is pressed 28 Jackrabbit BL1800 Before running the LCD_DEMO C sample program you will need an LCD based on the HD44780 or an equivalent controller e LCD DEMO C demonstrates a 4 bit interface to an LCD based on the HD44780 or an equivalent controller Connect the LCD to Parallel Port A Jackrabbit vec Ku LCD PAO LCD DB4 Prototyping Board TI adel pa PA1 LCD DB5 is 82 32 32 8 i eT PA2 LCD DB6 MEN aa PA3 LCD DB7 he ee Bee PA6 LCD RS Register Select Sja mi __PAS DB7 0 command 1 data PAG ae PA7 LCD E normally low latches A in l G on high to low transition i The R W pin and DBO DB3 on L RW the LCD are grounded DBO DB3 are not used with a 4 bit interface This sample program only involves writing and that is why we ground the R W pin VEE is used to control brightness the simplest thing to do is ground it If you need to control the bright
51. settings 16 Getting Started Manual 43 44 Jackrabbit BL1800 SCHEMATICS 090 0092 Jackrabbit Schematic www zworld com documentation schemat 090 0092 pdf 090 0088 Jackrabbit Prototyping Board Schematic www zworld com documentation schemat 090 0088 pdf 090 0128 Programming Cable Schematic www zworld com documentation schemat 090 0128 pdf The schematics included with the printed manual were the latest revisions available at the time the manual was last revised The online versions of the manual contain links to the latest revised schematic on the Web site You may also use the URL information provided above to access the latest schematics directly Getting Started Manual 45
52. so that you can change the program Use the Save as choice on the File menu to save the file with a new name so as not to change the demo program Save the file as MYTEST c Now change the number 25000 in the for statement to 10000 Then use the F9 key to recompile and run the program The LED will start flashing but it will flash much faster than before because you have changed the loop counter terminal value from 25000 to 10000 Watching Variables Dynamically Go back to edit mode select edit and load the program DEMOJR2 C using the File menu Open command This program is the same as the first program except that a variable k has been added along with a statement to increment k each time around the endless loop The statement runwatch has been added This is a debugging statement that makes it possible to view variables while the program is running Use the F9 key to compile and run DEMOJR2 C Now type lt Ctrl W gt to open the watch window and add the watch expression k to the top of the list of watch expressions Now type lt Ctrl U gt Each time you type lt Ctrl U gt you will see the current value of k which is incrementing about 5 times a second As an experiment add another expression to the watch window k 5 Then type lt Ctrl U gt several times to observe the watch expressions k and k 5 Summary of Features So far you have practiced using the following features of Dynamic C e Loading compiling and running
53. watch window Note how the value of j advances when the statement j is executed Break Point Move the cursor to the start of the statement for j 0 j lt 1000 j To set a break point on this statement type F2 or select Breakpoint from the Run menu A red highlight will appear on the first character of the statement To get the program run ning at full speed type F9 or select Run on the Run menu The program will advance until it hits the break point Then the break point will start flashing and show both red and green colors Note that LED DS3 is now solidly turned on This is because we have passed the statement turning on LED DS3 Note that j in the watch window has the value 25000 This is because the loop above terminated when j reached 25000 To remove the break point type F2 or select Toggle Breakpoint on the Run menu To continue program execution type F9 or select Run from the Run menu Now the LED should be flashing again since the program is running at full speed You can set break points while the program is running by positioning the cursor to a state ment and using the F2 key If the execution thread hits the break point a break point will take place You can toggle the break point off with the F2 key and continue execution with the F9 key Try this a few times to get the feel of things Getting Started Manual 25 Editing the Program Click on the Edit box on the task bar This will set Dynamic C into the edit mode

Download Pdf Manuals

image

Related Search

Related Contents

IDEP/CN8 User Manual  SPA CE - Chambre d`agriculture du Morbihan  IES-3082GC User Manual  Auszug Bedienungsanleitung Videokamera  LevelOne 10Gbp MMF SFP-Plus Transceiver, 300m, 850nm  2 データ管理    Page 1 ÉLERÓY ® S OMER Réf, 2662 4.33 l a    Poolmaster 59025  

Copyright © All rights reserved.
Failed to retrieve file