Simplified Robot Controller Programming
WPILib is a framework for programming FIRST Robotics Competition robots. This version of the library will work with FRC 2006-2007 and 2004/2005 robot controllers. This is an expanded version of the library that is used by easyC Pro. WPILib is available for FREE to all FIRST teams.
Using WPILib you get these features:
You can create robot programs with any development tools. You need to link the application with the correct version of WPILib and the IFI library. The version depends on the robot controller model (2004-5 or 2006-7). You can either write a single main program (main C function) or a competition program with three functions: Initialize(), Autonomous(), and OperatorControl(). These functions will automatically be run by WPILib. By default a single main program is assumed, if you want a competition project you need to add an IO_Initialization function that calls SetCompetitionMode(1). This will cause WPILib to look for your Autonomous, OperationControl and Initialize functions.
Here is an example of creating a project with MPLab, the software from Microchip that ships with the FRC kit of parts.
WPILib is incorporated into all the samples programs in the next section. It is version 785 software (currently FRC 2004-2006 version, and now VEX ). To get the software - extract the zip file into c:\WPILib and it will work with all the sample programs in the next section.
There are a bunch of sample programs that were shown at the kickoff workshops that show the use of basic motor operation, gyros, gear tooth sensor, and camera. These can be found here.
Using Eclipse with WPILib
You can build programs using eclipse as the development environment for WPILib or straight any projects based on the default code.
install the following components:
1. Get a copy of mingw from their website: http://www.mingw.org/download.shtml. You want to e MinGW installation half way down the page.
2. You also need to install the C18 compiler and tools from the IFI software CD that came with the kit.
3. You need the CDT (C development tools) that you can add to eclipse using its update feature and searching for new features.
Lastly, you need 2 plug-ins, the
mcc18 toolchain and a custom
The plug-ins are just copied to the plugins directory in eclipse.
Install everything and make sure that the mcc18\bin and the
mingw\bin directories are in your path so that eclipse can find them. Now, when
you create a project using the wizard, make sure it is a “managed make C
project”. On the “Select type of project” dialog box, be sure to select
“Microchip Embedded Systems”, and make sure that “FRC 18f8722 WPILib Robot” is
Be sure that mcc18\h is in the include path, 18f8722.lkr is
the linker file, mcc18\lib is in the library search path, and that you are
including WPILib\2k6\WPILib2k6.lib and WPILib\2k6\FRC2k6_library.lib in that
That should pretty much do it.
Currently you can email me (Brad Miller). I'll try to get a forum up here soon.